[英]how to stop a function from running code until a condition is met
這是我的代碼的簡化版本。 function1()
必須檢查互聯網上的某些內容。 它必須在應用程序的后台執行此操作(我無法更改它),這允許其余代碼在檢查Internet時運行。 此功能可能需要幾秒鍾才能完成。 我不能將日志放在函數1的末尾,因為無論function1是否成功,它都需要運行,而只能在嘗試完成后才能運行。 如何不使用計時器來實現此目的?
if (condition) {
if (condition2) {
function1();
}
Log.i("Info", "This should not appear until function1 completes or fails");
}
不要經常檢查; 這稱為忙等待 ,效率低下,尤其是在移動設備上(因為設備無法進入低功耗模式)。 而是使用AsyncCallback
運行您的function1
並將日志消息放入回調中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.