同步和非同步,阻塞和非阻塞概念介紹

2021-10-08 19:12:25 字數 501 閱讀 5435

同步和非同步

同步(synchronize)、非同步(asychronize)是指應用程式和核心的互動而言的.

阻塞和非阻塞
阻塞和非阻塞是針對於程序訪問資料的時候,根據io操作的就緒狀態來採取不同的方式.

簡單點說就是一種讀寫操作方法的實現方式. 阻塞方式下讀取和寫入將一直等待, 而非阻塞方式下,讀取和寫入方法 會理解返回乙個狀態值.

舉個例子: 例子

老張煮開水。 老張,水壺兩把(普通水壺,簡稱水壺;會響的水壺,簡稱響水壺)。

1 老張把水壺放到火上,站立著等水開。(同步阻塞)

2 老張把水壺放到火上,去客廳看電視,時不時去廚房看看水開沒有。(同步非阻塞)

3 老張把響水壺放到火上,立等水開。(非同步阻塞)

4 老張把響水壺放到火上,去客廳看電視,水壺響之前不再去看它了,響了再去拿壺。(非同步非阻塞)

io模型

同步 非同步 阻塞和非阻塞

同步 非同步 阻塞和非阻塞 在進行windowsapi winsock 網路程式設計時,我們常常見到同步 非同步 阻塞和非阻塞四種呼叫方式。這些方式其實都可以擴充套件為廣義的概念,幫助我們理解多執行緒,多程序,實時作業系統等更廣的概念。同步 synchronic 所謂同步,就是在發出乙個功能呼叫時,...

同步 非同步 阻塞和非阻塞

在進行網路程式設計時,我們常常見到同步 非同步 阻塞和非阻塞四種呼叫方式。這些方式彼此概念並不好理解。所謂同步,就是在發出乙個功能呼叫時,在沒有得到結果之前,該呼叫就不返回。按照這個定義,其實絕大多數函式都是同步呼叫 例如sin,isdigit等 但是一般而言,我們在說同步 非同步的時候,特指那些需...

同步 非同步 阻塞和非阻塞

這幾個概念總是記了又忘。寫下來。同步和非同步是針對應用程式和核心的互動而言的 同步指的是使用者程序觸發io操作並等待或者輪詢的去檢視io操作是否就緒,非同步是指使用者程序觸發io操作以後便開始做自己的事情,而當io操作已經完成的時候會得到io完成的通知。阻塞和非阻塞是針對於程序在訪問資料的時候,根據...