有了进程为什么还要引入线程?

像物理学家研究物质组成一样:先发现分子,其次继续细分发现原子,再后来是原子核和电子、夸克等等。进程也类似:

      引入线程是有目的的——因为进程作为可拥有资源和可独立调度的基本单位,犹如一个随时背着粮草的士兵,这必然会造成士兵的执行事务速度,所以,一个想法就是:分配两个士兵执行同一个事务。一个负责搬运所需粮草并进行急速配给,另一个士兵只带口粮执行事务。这就是线程思想,所谓的轻装上阵的士兵就是“线程”。

      由此联想到线程的机制:1担当进程的可独立调度角色,并分担少量必需资源。换句话说,线程成为并发执行的最小单元。2进程主要角色变为可拥有资源的基本单位。它一旦被调度会一直存储于高速缓冲区,若其包含的线程没有执行完毕。

      一方面,诸如进程的调度、同步和通信等机制同样适用于线程;另一方面,进程并没有因为引入线程而少了本身所具有的属性与功能。

猜你喜欢

转载自blog.csdn.net/A_Pointer/article/details/79170883