对线程和进程的解释

2017-08-15  本文已影响4人  汨罗在北方

之前老是忘了线程和进程的关系,今天特地查了下,发现阮一峰博客里对这个问题的解释很精妙,用工厂车间比喻进程,用工人比喻线程。

进程与线程的一个简单解释

操作系统的设计,因此可以归结为三点:
(1)以多进程形式,允许多个任务同时运行;
(2)以多线程形式,允许单个任务分成不同的部分运行;
(3)提供协调机制,一方面防止进程之间和线程之间产生冲突,另一方面允许进程之间和线程之间共享资源。

其中对于内存不能共用的协调机制使用了房间门锁的机制比喻。只能单线程用的是互斥锁(Mutual exclusion,缩写 Mutex),只能有限线程用的是信号量(Semaphore)。

但因为比喻对线程在cpu调度机制解释不清楚,也有人明确了一下:

进程和线程简单而基本靠谱的定义如下:

  1. 进程:程序的一次执行
  2. 线程:CPU的基本调度单位

抛开各种技术细节,从应用程序角度讲:

上一篇 下一篇

猜你喜欢

热点阅读