(1) 进程 :在最初定义为:资源分配与独立运行的基本单位 ; 后线程的概念出现,不再使用该定义。
(2) 进程 是 线程的管理者 。
(3)进程是关于某数据集合的一次运行活动 , 是系统进行资源分配与调度的基本单位。早计算机设计中 ,进程是程序的基本执行实体,在当代面向线程设计的计算机结构中,进程是线程的容器,程序是指令、数据及其组织形式的描述,进程是程序的实体。
(4)线程,有时被称为轻量级的进程,是程序执行流的最小单元。线程是程序中一个单一顺序的控制流程。进程内一个相对独立的、可调度的执行单元,是系统独立调度和分配cpu的基本单位,在单个程序中同事运行多个线程完成多个工作的操作称之为多线程。
- 硬件上的线程不等同于软件上的线程。
- 例如4C4T的CPU,并不是说只能同时运行4个线程,实际上cpu会在极短的时间内将时间片分给不同的线程,让用户感受到似乎线程在“同步”运行,其实他们是有先后顺序的。所以,4C4T的CPU可同时运行的线程数远大于4,但单个物理线程的压力会随着运行线程数的增多而增加,即单位时间内每个线程分到的CPU资源会减少,导致“卡顿”的感觉。
- 多线程场景下的效率,与CPU 物理核心数、物理线程数、超线程、单核主频等,均密切相关。