分类: LINUX
2013-10-10 14:04:59
进程是程序的一次运行活动,是系统进行资源分配和调度的一个独立单位.
线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源,从而极大地提高了程序的运行效率。
一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行。
进程和线程的区别在于:
简而言之,一个程序至少有一个进程,一个进程至少有一个线程.
线程的划分尺度小于进程,使得多线程程序的并发性高。
另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存, 从而极大地提高了程序的运行效率。
进程、线程各自在什么情况下使用? 答:
线程在一个任务需要并发,或者分为多个部分,需要大量的信息交换的时候使用。
进程在稳定性要求较高,且每个工作任务之间的信息交换非常少,近乎独立工作,且每个工作任务运算量大,等待时间较短的时候用。