2
我有一个后台线程的android应用程序,其中包含用于从服务器发送/接收数据的套接字连接。Android,退出/暂停应用程序,如何销毁线程
如果我的应用程序结束(后退按钮等)或暂停(主页按钮,调用其他应用程序),处理此后台线程的最佳方式是什么?
我看到2种方式:创建后,启动线程
覆盖onStop()
,onPause()
,或onDestroy()
之前,我只是想确保
呼叫
Thread.setDaemon(true)
我的应用程序不会挂起或有其他奇怪的行为。编辑:
另外,什么是关闭套接字的最佳解决方案?我是否也关闭它并使用inputStream?够了吗?
线程并不总是在背景上工作..它最终被调用,然后完成他的工作直到完成... 如果在某些工作中间发生某些事情时发生了问题,我需要清理它...因为线程可以访问套接字连接,所以我认为在不结束此套接字的情况下线程不能被中断。 虽然不知道最好的方法.. – cornelyus 2011-05-20 17:06:09
是的,如果过程完全被杀死,那么你有点不幸。我不确定过程kill是否调用任何生命周期方法,但是在将'stopped'设置为true后,可以在Thread对象上放置一个'join',然后用'finally'子句关闭所有套接字工作提供套接字并执行所需的其他清理工作。 – Femi 2011-05-20 17:14:08
嘿Femi ..关心发展呢?可能有些编码,请问? – cornelyus 2011-06-15 16:57:10