0

当由于内存不足而调用服务的 onDestroy 时,在该方法中,我是否应该做一些事情,例如告诉工作线程他们应该结束工作,然后等待他们退出,然后让系统终止托管进程?如果是这样,系统允许我等待多长时间?我是否应该让工作线程能够在任何时候尽可能快地结束自己?

还是我完全错了?


或者我应该问:

清理工作线程的最安全或最佳点在哪里?或者什么是最安全或最好的方法。或者根本就没有这种东西,一个线程应该随时准备被杀死而不通知?

4

1 回答 1

0

IIRC 生命周期方法只会让您等待 1-2 秒,然后显示“活动未响应”消息。通常,您不能等待这些方法中的任何内容。

onDestroy是最后一个生命周期方法,当应用程序仅在后台时不会调用。你想让你的线程在后台运行吗?这取决于您的应用程序,但这通常是不好的行为。

我建议您可能想要暂停onPause()当应用程序不再处于前台时发生的情况,或者至少在onStop()应用程序不再可见时发生。

于 2012-02-16T08:34:33.733 回答