课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
线程与进程的探讨我们在前几期的文章中说过很多次了,而今天我们就再来了解一下,线程的属性与特点都有哪些。希望通过对本文的阅读,大家对线程有更多的了解。
线程具有传统进程所具有的特征,所以称之为轻型进程或进程元,相应的把传统进程称之为重型进程。
一个进程可以拥有若干个线程,至少一个。
线程的属性
轻型实体
独立调度和分派的基本单位
可并发执行
共享进程资源
进程与线程的比较
调度
进度是资源分配的基本单位,线程是调度和分派的基本单位,线程几乎不拥有系统资源更轻量级,能显著提高系统的并发程度。
在同一个进程中,线程的切换不会引起进程的切换。但从一个进程中的线程切换到另外一个进程中的线程时会引起进程的切换。
并发行
进程和线程都可以并发执行,这使得操作系统具有良好的并发性,从而能够更加有效的提高系统资源的利用率和系统的吞吐量。引入线程使得系统具体更好的并发性
资源
进程是拥有资源的基本单位,线程几乎不拥有系统资源,但是可以访问它隶属的进程的资源,进程的资源可以供该进程下的所有线程所共享
系统开销
创建或撤销进程时,系统都要为之创建和回收进程控制块,分配和回收资源如内存空间和I/O设备等,操作系统所付出的开销明显大于线程创建或撤销时的开销。
进程的切换也会比线程的切换更费时,进程切换的代价比线程切换要高。
一个进程中的多个线程具有相同的地址空间,在同步和通信的实现方面也比进程容易。
线程间的同步
互斥锁(mutex)
条件变量
信号量
私用信号量(同一进程内线程同步,进程内可见OS不知道,OS不会自动回收未释放的信号量)
公用信号量(不同进程间线程同步,OS会自动回收未释放的信号量,较安全)
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请在707945861群中学习了解。