同步和異步;阻塞與非阻塞

同步:A調用B,B處理直到獲得結果,才返回給A。需要調用者一直等待和確認調用結果是否返回,然後繼續往下執行。


異步:A調用B,無需等待結果,B通過狀態通知A或回調函數來處理。調用結果返回時,會以消息或回調的方式通知調用者。


阻塞:A調用B,A被掛起直到B返回結果給A,才能繼續執行。調用結果返回前,當前線程掛起不能夠處理其他任務,一直等待調用結果返回。


非阻塞:A調用B,A不會被掛起,A可以執行其他操作。調用結果返回前,當前線程不掛起,可以處理其他任務。


區別:同步異步是個操作方式,阻塞非阻塞是線程的一種狀態。


理解:同步異步指的是被調用者結果返回時通知線程的一種機制;
阻塞非阻塞指的是調用結果返回進程前的狀態,是掛起還是繼續處理其他任務。

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