一、线程与进程的基本概念
进程是系统进行资源分配的最小单位,线程是CUP调度的最小单位
线程依赖于进程而存在,一个进程可以有多个线程(进程是不执行任务的,执行任务的都是线程)
进程有自己的独立地址空间,每启动一个进程,系统就会为它分配地址空间。而线程是共享进程中的数据的,使用相同的地址空间
同一进程下不同线程间数据容易共享,不同进程间数据很难共享
线程之间没有单独的地址空间,一个线程死掉,整个进程也死掉。而一个进程死掉并不会对另外一个进程造成影响。
二、CPU核心数和线程数的关系
正常情况一个CPU的内核可以执行一个线程(超线程技术可以使我们的物理核心数和逻辑核心数形成一个所谓的1:2的关系,所以一般现在如果一个4核CPU,他的逻辑处理器就会有8个,代表可以同时跑8个线程)
三、CPU时间片轮转机制
参考:https://blog.csdn.net/maojian_ohhey/article/details/114345403
四、并行和并发的基本概念
并行:可以同时运行任务(比如:有2台自助售卖机,可以同时进行售卖,这个就叫做并行),是不同的实体执行任务
并发:在某一个时间段内能处理的任务数量叫