Linux应用编程基础--(7)多线程编程

来源:互联网 发布:淘宝管控记录怎么销 编辑:程序博客网 时间:2024/06/10 21:26

一、线程基础:

由于进程的地址空间是私有的,因此在进程间上下文切换时,系统开销比较大,为了提高系统性能,许多操作系统引入了轻量级进程的概念,也被成为线程。
线程是内核里调度的最小单位。
在许多经典的操作系统教科书中,总是把进程定义为程序的执行实例,它并不执行什么,只是维护应用程序所需的各种资源。而线程则是真正的执行实体,为了让进程完成一定的工作,进程必须至少包含一个线程。
进程所维护的是程序所包含的资源(静态资源),如:地址空间,打开的文件句柄集,文件系统状态,信号处理handler等。
线程所维护的是运行相关的资源(动态资源),如:运行栈,调度相关的控制信息,待处理的信号集等。