簡體   English   中英

mainthread處理廣播接收器的概念是什么?

[英]What is the concept of mainthread handling the broadcast receiver

我有一個關於廣播接收器和mainthread處理它的問題。

如果主線程正在進行一些計算(或者你可以說在構造函數或方法中執行代碼)並且觸發了廣播接收器onReceive()? 將挑選哪項任務

  1. 構造函數/方法將完成其執行,然后調用onReceive。 (這是我的理解)

  2. onReceive將首先被觸發

構造函數/方法將完成其執行,然后調用onReceive應該是答案,因為BroadcastReceivers總是在主線程上調用。

void onReceive(Context context,Intent intent)。

當BroadcastReceiver接收Intent廣播時調用此方法。 在此期間,您可以使用BroadcastReceiver上的其他方法來查看/修改當前結果值。 除非您明確要求使用registerReceiver(BroadcastReceiver,IntentFilter,String,android.os.Handler)在不同的線程上調度此方法,否則此方法始終在其進程的主線程內調用。

更多細節在這里。

你是對的....

1)首先執行主線程,然后只執行任何待處理的任務。

2)如果主線程花費太長時間來完成它的任務,它只會給出一個exception

應用程序“AndroidThreadDemo”沒有響應。

請參閱此鏈接了解更多信息..我相信它會對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM