POSIX线程-什么是线程

来源:互联网 发布:淘宝职称论文署名单位 编辑:程序博客网 时间:2024/05/17 07:22

Wiki百科上是这样定义线程的:

       In computer science, a thread of execution is the smallest unit of processing that can be scheduled by an operating system.

   教课书上定义的是:进程是资源管理的最小单位,线程是程序执行的最小单位。

   很多地方说线程是一种轻量级的进程,其实是不太准确的,进程要求有自己的虚拟地址空间,所有的数据都是独立的,而线程要求的是共享虚拟地址空间,共享全局变量,堆等。

    线程是一种比进程轻(创建快,切换快,占用内存少)的,让应用程序并行执行多个任务的一种机制。一个进程可以包含多个线程(至少一个线程),这些线程共享相同的全局内存,相同的虚拟地址空间和一些属性。在多cpu系统中,同一进程中的线程是可以并行执行的,任意一个线程的阻塞都不会影响到其他线程。

图选自The linux programming interface-chapter29.1

0 0
原创粉丝点击