Chinaunix首页 | 论坛 | 博客
  • 博客访问: 27100
  • 博文数量: 34
  • 博客积分: 65
  • 博客等级: 民兵
  • 技术积分: 180
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-16 14:56
文章分类
文章存档

2012年(4)

2011年(30)

我的朋友

分类:

2011-12-15 15:23:46

原文地址:POSIX线程-什么是线程 作者:ddbddb1

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

阅读(138) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~