lesson1 什么是线程

来源:互联网 发布:罗马共和国 知乎 编辑:程序博客网 时间:2024/06/03 17:11

1. 进程:一个正在执行的程序,它是资源分配的最小单位。


2. 线程:轻量级进程,程序执行的最小单位,程序独立调度和分配CPU的基本单位,它是进程中的一个实体。

一个进程中可以有多个线程,共享进程的所有资源,线程本身只包含一点必不可少的资源。


3. 并发:同一时刻只能有一条指令执行,但多个进程指令被快速切换,宏观上感觉多个进程同时执行的效果。

并行:同一时刻多条指令在多个处理器上同时执行。真正的同时发生。

同步:彼此有依赖关系的调度不应该同时发生,同步就是阻止这些同时发生的事情。

异步:事情独立发生。


4. 多线程的优势:

a. 占用少的系统资源,相对于多进程来说;

b. 模块化编程,能更清晰的表达程序中独立事件的关系,结构清晰;

c. 在等待慢速IO时,程序可以执行其他操作,提高并发性;

d. 多处理中开发程序的并发性;


多线程不一定在多处理器上。







0 0