https://www.bilibili.com/video/BV1Ng4y1q7bm 学习笔记
带宽比较低的设备
USB 鼠标 键盘
高速访问 带宽高的设备
CPU RAM PCI-E
5GHz 每秒钟进行5G次基础指令运算
一个cpu芯片可以集成多个 cpu 核心,可以并行处理任务。一般核心数=线程数
CPU的缓存是对主存的高速缓存。
资源调度管理的最小单位
进程中的所有线程共享一套地址空间
多线程 在CPU阻塞情况下很有用
线程的五种状态 只有运行中占用 CPU 资源
线程池 进行管理 线程的 创建 和 销毁 减少了消耗
协程能够减少一部分的 线程切换
协程,英文Coroutines,是一种比线程更加轻量级的存在。正如一个进程可以拥有多个线程一样,一个线程也可以拥有多个协程。
协程不是进程或线程,其执行过程更类似于子例程,或者说不带返回值的函数调用。
如果是 先state=0;然后 持有者 = null;
state 等于零 之后 会调用 lock()
持有者 = null 和 lock 的 持有者 = 当前线程 可能会 冲突
但是 先 持有者 = null; 再 state = 0; 就会避免这个问题的发生。