Skip to content

Latest commit

 

History

History
6 lines (5 loc) · 1.13 KB

同步,异步,阻塞和非阻塞的概念.md

File metadata and controls

6 lines (5 loc) · 1.13 KB
  1. 同步:在同步操作中,调用者会等待操作完成后才返回。例如,在进行磁盘读写或者网络数据传输时,如果使用同步方式,那么在整个读写或者传输过程完成之前,调用者会一直等待。
  2. 异步:在异步操作中,调用者发起操作后不会立刻等待结果,而是可以继续做其他事情。当操作完成后,通过某种机制通知调用者。这样,异步操作可以帮助提高程序的并发性和响应性。
  3. 阻塞:在阻塞状态下,调用者在等待操作完成期间无法进行其他操作,必须等待当前操作完成后才能继续,它会导致程序暂停执行。
  4. 非阻塞:在非阻塞状态下,即使操作还没有完成,调用者也能立即返回,进行其他操作。如果操作未完成,调用者可能需要定期检查操作状态,或者通过某种机制接收操作完成的通知。

这四种概念往往会成对出现,例如“同步阻塞”和“异步非阻塞”。一个典型的例子就是网络编程中的I/O模型,其中包括同步阻塞I/O、同步非阻塞I/O、异步阻塞I/O和异步非阻塞I/O。