一个事实
—CPU在某一时刻只做一件事。
线程,准确地说,是多线程的引入,目的是弥补进程的缺陷,提高CPU利用率(一段时间内CPU所做事情的数目,也就是说,CPU越忙,利用率越高)。
举个例子
某家要造房子,找了一个工人工活。这个工人就是CPU,他一次只能做一件事。
假如一个进程对应于一个日程表
(单核多进程)一个工人多个日程表,第一天买水泥,第二天搬砖,第三天砌墙。结果下了单水泥要明天到,今天就只能等着干不了活了。
假如一个线程对应于一个曰程表
(单核多线程)如果有三张日程表,第一张买水泥,第二张搬砖,第三张砌墙,于是工人下单买水泥,水泥要等,工人灵机一动,就放下第一张日程表,拿起第二张,开始搬砖,搬完砖发现水泥到了.....然后一天时间就把活干完了。
线程,就是“灵机一动”(升级)后的进程,多个进程对比多个进程,优势在于可以自由切换,减少CPU的等待。
就酱。