目錄
概念性
同步和異步通常用來形容一次方法調用。
- 同步方法調用一旦開始,調用者必須等到方法調用返回后,才能繼續后續的行為。
- 異步方法調用更像一個消息傳遞,一旦開始,方法調用就會立即返回,調用者就可以繼續后續的操作。而,異步方法通常會在另外一個線程中,“真實”地執行着。整個過程,不會阻礙調用者的工作。
圖示例
舉個例子
打個比方,比如我們去購物,如果你去商場實體店買一台空調,當你到了商場看中了一款空調,你就想售貨員下單。售貨員去倉庫幫你調配物品。這天你熱的實在不行了。就催着商家趕緊給你配送,於是你就等在商場里,候着他們,直到商家把你和空調一起送回家,一次愉快的購物就結束了。這就是同步調用。
不過,如果我們趕時髦,就坐再家里打開電腦,在網上訂購了一台空調。當你完成網上支付的時候,對你來說購物過程已經結束了。雖然空調還沒有送到家,但是你的任務都已經完成了。商家接到你的訂單后,就會加緊安排送貨,當然這一切已經跟你無關了,你已經支付完成,想什么就能去干什么了,出去溜達幾圈都不成問題。等送貨上門的時候,接到商家電話,回家一趟簽收即可。這就是異步調用。
(注:以上內容摘自Java高並發程序設計)