您的位置:首页 > 职场人生

黑马程序员之C# 学习笔记:进程,线程具体定义区别。

2012-10-11 08:47 661 查看
----------------------------------------2345王牌技术员联盟2345王牌技术员联盟、期待与您交流!---------------------------------------------

进程:是操作系统就行资源分配的单位,有自己的地址空间。

操作系统使用进程将它们正在执行的不用应用程序分开。

1.进程是程序在计算机上的一次执行活动。当你运行一个程序,你就启动了一个进程;

2.进程是活的(动态的),是处于运行状态的程序;

进程的分类:系统~~~用户~~~

1:系统进程:凡是用于完成操作系统的各种功能的进程;

2:用户进程:所有由你启动的进程;

进程和线程:

在windows下,进程又细分为多个线程

线程:是操作系统分配处理器时间的基本单元,并且进程中可以有多个线程同时执行代码

1.每个线程都维护异常处理程序,调度优先级和一组保存线程上下文的结构;

2.线程上下文指线程在宿主进程地址空间中执继续行所需的所有信息,包括线程的CPU寄存器和堆栈;

多线程:是在共享内存空间中并发的多道执行路径,可以实现并发

1.在具有多个处理器(多核)的计算机上的多线程;

2.在具有以个处理器(单核)的计算机上的多线程,一个进程中可以有多个线程同时执行的效果。它通过以下方式实现这一点:

1)处理器轮流为每个线程分配处理器时间片。由于每个时间片都很小,因此即使只有一个处理器,多个线程看起来似乎也是在同时执行;

2)当前执行的线程在其他时间片结束时被挂起,而另一个线程继续进行;

3)当系统从一个线程切换到另一个线程时,它将保存当前线程的线程上下文,并重新加载线程队列中下一个线程的程序上下文;

多线程缺点:任务切换时,一个被挂起,一个继续执行;同时要保存当前线程的程序上下文,并加载下一个线程的线程上下文。

多线程处理在设计应用程序时还要考虑的资源要求和潜在冲突。这些资源要求如下所述:

1.系统位进程AppDomain对象和线程所需的上下文信息使用内存。因此,可以创建的进程,AppDomain对象和线程的数目会受到可用内存的限制

2.跟踪大量的线程将占用大量的处理器时间。如果线程过多,则其中大多数线程都不会产生明显的进度。

---------------------------------------------------
2345王牌技术员联盟、2345王牌技术员联盟、期待与您交流!---------------------------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: