介绍什么是线程用来干什么.docVIP

  • 37
  • 0
  • 约1.06万字
  • 约 9页
  • 2018-06-11 发布于江苏
  • 举报
介绍什么是线程用来干什么

1.介绍:什么是线程,用来干什么? 线程常常被叫做轻量级的(lightweight)进程,虽然这个称呼有点过于简单了,但这是一个不错的开始。线程虽然不是UNIX的进程,但很相似。为了弄懂他们的区别,我们必须看看UNIX进程、Mach任务和线程的关系。在UNIX中,一个进程包括可执行的程序以及许多的资源,象是文件描述符表和地址空间。在Mach中一个任务只包括资源;线程负责所有的执行活动。一个Mach任务可以有几个线程与之相关联,而且所有的线程必须与某任务关联。与同一个任务相关联的线程共享该任务的资源。所以本质上一个线程就是一个程序计数器,一个堆栈,和一系列寄存器--其余所有的数据结构都属于任务。一个在Mach中的UNIX进程被模拟为只有一个线程的任务。 因为相比于进程,线程很小,所以如果用cpu的消耗来衡量,线程的创建相对廉价。因为进程要求有它们自身的资源,而线程共享资源,所以线程节省内存。Mach线程赋予程序员开发可同时执行于单cpu和多cpu的机器上并发程序的能力,如果有的话可利用额外的cpu。另外,如果程序在单cpu环境下易于阻塞或导致迟滞,比如文件操作活套接字操作,线程可以提升性能。 在接下来的部分中,我们会讨论一部分POSIX线程标准和它在DEC OSF/1 OS上的执行细节,V3.0.POSIX线程被称作pthreads并且

文档评论(0)

1亿VIP精品文档

相关文档