【发布时间】:2012-01-03 02:07:17
【问题描述】:
我的活动运行了一个工作线程。退出活动时(例如 onPause()),我正在向该线程发送一条消息,它应该在不久(毫秒)后完成,除非出现问题。 通常,我会在 onPause() 中使用 join(),但在这种情况下,该线程必须使用 UI 线程才能执行其关闭序列(关闭附件文件描述符似乎不适用于任何其他线程) . 所以试图阻塞 UI 线程会导致死锁。我正在寻找一种解决方案,它会以某种方式将应用程序退出推迟到线程退出之后。 可能,如果我可以在这种情况下中止退出,我可以稍后手动调用 finish(),但我不确定是否可以这样做(中止)。
仅仅假设线程最终将完成其清理并退出似乎是一种非常不安全的做法。
【问题讨论】:
标签: android multithreading android-activity