1. 程式人生 > >java基礎 - 同步與非同步的區別

java基礎 - 同步與非同步的區別

同步:傳送一個請求,等待返回,然後再發送下一個請求
非同步:傳送一個請求,不等待返回,隨時可以再發送下一個請求
同步可以避免出現死鎖,讀髒資料的發生,一般共享某一資源的時候用,如果每個人都有修改許可權,同時修改一個檔案,有可能使一個人讀取另一個人已經刪除的內容,就會出錯,同步就會按順序來修改。
非同步則是可以提高效率了,現在cpu都是雙核,四核,非同步處理的話可以同時做多項工作,當然必須保證是可以併發處理的。
這些都是對的。
同步和非同步最大的區別就在於。一個需要等待,一個不需要等待。
比如廣播,就是一個非同步例子。發起者不關心接收者的狀態。不需要等待接收者的返回資訊
電話,就是一個同步例子。發起者需要等待接收者,接通電話後,通訊才開始。需要等待接收者的返回資訊