Android Telephony相關應用中,Telephony大量使用了Handler、Broadcast等通訊方式,而在Android操做系統平臺中的Handler消息處理、Broadcast廣播消息等均採用異步通訊機制,那麼咱們首先要清楚什麼是異步通訊機制,與它相對同步的通訊機制是什麼,有什麼區別。異步
Synchronous(同步)和Asynchronous(異步)的概念最先來自通訊領域。函數
通訊的同步:指客戶端在發送請求後,必需要在服務端有迴應後客戶端才繼續發送其餘請求,因此這時全部請求將會在服務端獲得同步,直到服務端返回請求。性能
通訊的異步:指客戶端在發送請求後,沒必要等待服務端的迴應就能夠發送下一個請求,對全部的請求動做來講將會在服務端獲得異步,這條請求的鏈路就像是一個請求隊列,全部的請求動做在這裏不會獲得同步。spa
在軟件世界中,咱們常說的「同步和異步」,更可能是指函數、方法調用的「同步和異步」,也就是「同步調用和異步調用」。操作系統
所謂同步調用,在發起一個函數或方法調用時,沒有獲得結果以前,該調用就不返回,直到返回結果;異步調用的概念和同步相對,在一個異步調用發起後,被調用者當即返回給調用者,但調用者不能馬上獲得結果,被調用者在實際處理這個調用的請求完成後,經過狀態、通知或回調等方式來通知調用者請求處理的結果。orm
注意 如今清楚同步和異步嗎?簡單地說,同步就是發出一個請求後什麼事都不作,一直等待請求返回後纔會繼續作事;異步就是發出請求後繼續去作其餘事,這個請求處理完成後會通知你,這時候就能夠處理這個迴應了。隊列
單從任務調用來說,對於同一個任務,異步調用並不能加快這個任務的執行速度和效率,相反會下降執行速度和效率。站在整個系統的層面上考慮,異步調用使得整個系統的性能效率提升,各個組件之間運行配合更加協調。這纔是異步調用的真正優勢。同步