messagequeue原理 為什么使用mq?
為什么使用mq?謝謝你邀請我回答:對不起,我不明白問題的真正含義,所以我不能回答。理解面試:Handler的工作原理是怎樣的?處理機制的工作原理:處理程序的工作流程主要包括處理程序、循環器、消息和消息
為什么使用mq?
謝謝你邀請我回答:
對不起,我不明白問題的真正含義,所以我不能回答。理解
面試:Handler的工作原理是怎樣的?
處理機制的工作原理:
處理程序的工作流程主要包括處理程序、循環器、消息和消息隊列四個部分。但是在我們的日常開發中,我們通常只使用處理程序和消息類。Message負責承載消息,其中有一個用于標記消息的目標、用于存儲內容的obj以及用于分發和處理消息的處理程序。
以下是對您的具體說明:
處理程序機制由循環器和消息隊列構成。
消息隊列:消息隊列。雖然它被稱為隊列,但實際上它的內部存儲結構并不是一個真正的隊列。相反,它使用單鏈表的數據結構來存儲消息列表。主要有兩種方法:insert enqueue()和remove next()。
循環器:消息循環。消息隊列用于存儲消息,而looper用于確定無限循環中是否有新消息。如果有新消息,將對其進行處理。如果沒有,它將是備用的。當線程創建處理程序時,它首先需要創建一個循環器,否則它將報告一個錯誤:runtimeException:no looper活套準備()未在此線程上調用,每個線程中只需要創建一個循環器,否則將報告錯誤:runtimeException:每個線程只能創建一個循環器。
在面試中,我建議自己總結一套自己的專屬答案,并徹底理解,這樣當我遇到這個問題時,我就可以輕松回答了!