黑马程序员技术交流社区
标题:
进程,线程具体定义区别。(学习笔记)
[打印本页]
作者:
张文文
时间:
2012-10-10 15:02
标题:
进程,线程具体定义区别。(学习笔记)
本帖最后由 张文文 于 2012-10-11 08:47 编辑
进程:
是操作系统就行资源分配的单位,有自己的地址空间。
操作系统使用进程将它们正在执行的不用应用程序分开。
1.进程是程序在计算机上的一次执行活动。当你运行一个程序,你就启动了一个进程
2.进程是活的(动态的),是处于运行状态的程序
进程的分类:系统~~~用户~~~
1:系统进程:凡是用于完成操作系统的各种功能的进程
2:用户进程:所有由你启动的进程
进程和线程:
在windows下,进程又细分为多个线程
线程:
是操作系统分配处理器时间的基本单元,并且进程中可以有多个线程同时执行代码
1.每个线程都维护异常处理程序,调度优先级和一组保存线程上下文的结构
2.线程上下文指线程在宿主进程地址空间中执继续行所需的所有信息,包括线程的CPU寄存器和堆栈
多线程:
是在共享内存空间中并发的多道执行路径,可以实现并发
1.在具有多个处理器(多核)的计算机上的多线程
2.在具有以个处理器(单核)的计算机上的多线程,一个进程中可以有多个线程同时执行的效果。它通过以下方式实现这一点:
1)处理器轮流为每个线程分配处理器时间片。由于每个时间片都很小,因此即使只有一个处理器,多个线程看起来似乎也是在同时执行
2)当前执行的线程在其他时间片结束时被挂起,而另一个线程继续进行
3)当系统从一个线程切换到另一个线程时,它将保存当前线程的线程上下文,并重新加载线程队列中下一个线程的程序上下文
多线程缺点:任务切换时,一个被挂起,一个继续执行;同时要保存当前线程的程序上下文,并加载下一个线程的线程上下文。
多线程处理在设计应用程序时还要考虑的资源要求和潜在冲突。这些资源要求如下所述:
1.系统位进程AppDomain对象和线程所需的上下文信息使用内存。因此,可以创建的进程,AppDomain对象和线程的数目会受到可用内存的限制
2.跟踪大量的线程将占用大量的处理器时间。如果线程过多,则其中大多数线程都不会产生明显的进度。
作者:
许庭洲
时间:
2012-10-11 08:52
值得学习ing!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2