java - 线程可运行与 AsyncTask 生命周期

标签 java android multithreading android-asynctask runnable

我想更好地了解当 Activity 被销毁时,ThreadAsyncTask 会发生什么情况。

因此,在这种情况下,ThreadAsyncTask 将从 Activity 启动,用户点击主页按钮,onDestroy 被调用,触发 GC在 AsyncTask 的任一线程有机会完成之前。

在这种情况下,Thread/RunnableAsyncTask 哪一个更有可能运行直至完成?

谢谢。

最佳答案

两者都会运行

但问题是,如果你在 AsyncTask 的线程上引用了被杀死的 Activity ,它就会泄漏,这是你需要解决的一个问题,以使长时间运行的任务与 UI 同步

如果您有更大的任务,我建议您启动 Service ,这在 Android 上下文中更容易处理

关于java - 线程可运行与 AsyncTask 生命周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30092415/

相关文章:

java - 死锁和同步方法

multithreading - JUnit测试未执行测试中创建的所有线程

android - BottomSheetBehavior_Layout_behavior_hideable 如何转换为应用程序 :behavior_hideable?

安卓工作室 : Does not show all errors immediately

java - 同时发出多个 Volley 请求

java - 这个 Java 是否很好地近似了 @UIApplicationMain 在 Swift 中的工作方式?

java - 在 DefaultCellEditor 派生实例完成其工作后更新单元格渲染器

java - 需要帮助来读取文本文件

java - 使用 selenium 断言页面

php - 如何保护 web 服务,以便只有我的 android 应用程序可以使用我的 web 服务