线程、协程、异步

线程:CPU调度的最小单位,是操作系统级别的概念。想开辟多线程,需要调用操作系统底层的API。

为什么会出现多线程?

我们以读取文件为例

【linux系列知识】线程、协程、异步

根据上图所示,我们可以发现当有读取文件请求时,CPU会先触发一个DMA中断,让DMA去处理后面的工作,再中断返回通知CPU处理,当DMA去处理的这段时间,CPU是处于闲置状态的,这时就可以给其他线程去使用,所以如果只是一个单线程程序,那么会造成CPU的闲置,没有充分利用到CPU资源。

协程

   编程语言级别的线程,用户自定义的线程,对于上述的线程是有限制的,而我们可以使用go语言来创建协程,一样能模拟线程的效果。

异步

     对于读取文件中DMA处理就是一个异步过程。

相关文章:

  • 2021-08-27
  • 2021-08-20
  • 2021-07-19
  • 2021-05-08
  • 2021-05-28
  • 2022-01-28
  • 2021-09-08
  • 2022-12-23
猜你喜欢
  • 2021-12-03
  • 2022-12-23
  • 2021-06-18
  • 2021-11-19
  • 2021-10-26
  • 2021-12-28
  • 2021-09-05
相关资源
相似解决方案