併發:
指某乙個時間段內(非時間點),有多個程式在乙個cpu上執行。例如在1s內,有100個程式執行,但只有乙個程式在某一時刻通過cpu切換程序在真正地執行。就可以說是1s內併發數量為100
並行:指在某乙個時間點,多個程式在多個cpu上被執行。
同步:指是**呼叫io操作時,必須等待io操作完成才能返回的呼叫方式
非同步:指是**呼叫io操作時,不需要等io操作就能返回的呼叫方式
阻塞:是指呼叫函式時當前執行緒被掛起
非阻塞:
是指呼叫函式時,當前執行緒不會被掛起,而是立即返回
unix 系統的五種i/o模式(發展過程):
1. 阻塞io
2. 非阻塞io
3. io復用
4. 訊號驅動式io
5. 非同步io
同步非同步?阻塞非阻塞?併發並行?
阻塞呼叫是指呼叫結果返回之前,呼叫者會進入阻塞狀態等待。只有在得到結果之後才會返回。非阻塞呼叫是指在不能立刻得到結果之前,該函式不會阻塞當前執行緒,而會立刻返回。同步 在發出乙個同步呼叫時,在沒有得到結果之前,該呼叫就不返回。非同步 在發出乙個非同步呼叫後,呼叫者不會立刻得到結果,該呼叫就返回了。同...
併發 並行,阻塞 非阻塞,同步 非同步
1.阻塞,非阻塞 乙個執行緒 程序經歷的5個狀態,建立,就緒,執行,阻塞,終止。各個狀態的轉換條件如上圖,其中有個阻塞狀態,就是說當執行緒中呼叫某個函式,需要io請求,或者暫時得不到競爭資源的,作業系統會把該執行緒阻塞起來,避免浪費cpu資源,等到得到了資源,再變成就緒狀態,等待cpu排程執行。定義...
同步 非同步 阻塞 非阻塞 併發 並行
同步和非同步關注的是訊息通訊機制 synchronous communication asynchronous communication 所謂同步,就是在發出乙個呼叫時,在沒有得到結果之前,該呼叫就不返回。但是一旦呼叫返回,就得到返回值了。換句話說,就是由呼叫者主動等待這個呼叫的結果。而非同步則是...