0
A
回答
3
來自官方的Java文檔:
任務可以在任何時候通過調用取消(布爾)被取消。 調用此方法將導致後續調用isCancelled()至 返回true。 調用此方法後,將在 doInBackground(Object [])返回後調用onCostlled(Object),而不是 onPostExecute(Object)。爲了確保任務是儘快取消 ,應始終從doInBackground檢查 isCancelled(返回值)定期(對象[]),如果可能的話 (例如一個循環中。)
和方法Java文檔:
public final boolean cancel (boolean mayInterruptIfRunning)
試圖取消對此任務的執行。如果 任務已完成,已被取消或因其他原因不能取消 ,此嘗試將失敗。如果成功,並且此任務有 在調用取消時未啓動,則此任務不應運行。如果 任務已經啓動,則mayInterruptIfRunning參數 將確定執行此任務的線程是否應在嘗試停止任務時中斷 。
調用此方法將在doInBackground(Object [])返回後在UI線程上導致onCancelled(Object)被調用 。 調用這個 方法保證不會調用onPostExecute(Object)。 調用此方法後,應該儘早檢查由doInBackground(Object [])定期檢查由 isCancelled()返回的值以儘快完成 任務。
4
答案是NO 。如醫生說:
public final boolean cancel (boolean mayInterruptIfRunning):
調用此方法保證onPostExecute(對象)是從未 調用。調用此方法後,應該定期從doInBackground(Object []) 中檢查由isCancelled()返回的值 ,以儘早完成任務。
相關問題
- 1. 取消任務時會發生什麼?
- 2. 取消鏈接目錄時會發生什麼情況?
- 3. 當PayPal訂閱被取消或失敗時會發生什麼?
- 4. 取消時線程的內存會發生什麼變化?
- 5. 發生故障時會發生什麼?
- 6. 什麼時候會發生?
- 7. 當我取消發佈Chrome擴展程序時會發生什麼情況
- 8. Rails:取消(ctrl + c)長時間運行遷移時會發生什麼?
- 9. 會發生什麼?
- 10. 會發生什麼?
- 11. 會發生什麼?
- 12. 會發生什麼?
- 13. 會發生什麼?
- 14. 會發生什麼?
- 15. 如果寫入localStorage被取消會發生什麼?
- 16. 如果我不取消上下文會發生什麼?
- 17. 如果我們不取消註冊BroadcastReceiver會發生什麼?
- 18. 當AsyncTasks已滿時會發生什麼?
- 19. Android,活動完成()會發生什麼?
- 20. Android - 後臺活動會發生什麼?
- 21. onClick完成後會發生什麼。 Android
- 22. Android studio Fragment onAttach。 onAttach會發生什麼?
- 23. 當我使用NServiceBus訂閱消息時會發生什麼?
- 24. 時間過後撤消合併,會發生什麼?
- 25. 按下打開/取消按鈕時JFilechooser對象會發生什麼
- 26. 當您在C++中取消引用字符串時會發生什麼情況
- 27. 當sql server級聯更新並取消操作時會發生什麼?
- 28. 當我們從瀏覽器取消網絡請求時會發生什麼?
- 29. 當發生javascript運行時錯誤時會發生什麼?
- 30. 當程序運行時發生事件時會發生什麼
我希望你能閱讀下列不錯的答案得到你的答案,有一兩件事我想說按我的經驗(和按文件),如果你取消你的任務則不能保證doInBackground將停止其因此它在執行doInBackground中的任何新行之前檢查isCancelled()是一種很好的做法 – rajpara