同步、異步、阻塞、非阻塞

同步、異步、阻塞、非阻塞

阻塞、非阻塞

  • 阻塞/非阻塞:指線程/進程要操作的數據是否準備就緒,進程/線程是否需要等待
  • 阻塞:進程/線程給CPU傳達一個任務之後,一直等待CPU處理完成,然後才執行後續操作
  • 非阻塞:進程/線程給CPU傳達任務候繼續處理後續操作,間隔詢問之前的任務是否完成,這種過程其實也叫輪詢。

同步、異步

  • 同步/異步:訪問數據的方式
  • 同步:主動讀寫數據,在讀寫數據的過程中還是會阻塞
  • 異步:不主動讀寫數據,由操作系統內核進行數據讀寫,操作完成候返回信號。

總結

1、阻塞、非阻塞、多路複用,都是同步IO,異步必定是非阻塞的。
2、只有用戶進程/線程在操作IO時根本不考慮IO的執行全都交給CPU去完成,而自己只等待一個完成的信號時纔是真正的異步。
鏈接: https://www.cnblogs.com/Anker/p/5965654.html.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章