首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

怎么结束service中的阻塞线程

2012-07-20 
如何结束service中的阻塞线程?我想实现两个手机在wifi下的联机,这就需要一方扮演服务器角色,监听一个固定

如何结束service中的阻塞线程?
我想实现两个手机在wifi下的联机,这就需要一方扮演服务器角色,监听一个固定端口。

Java code
                ServerSocket server = new ServerSocket(5678);                while (true) {                    Socket s = server.accept ();}


我将以上代码放到一个service中新开的一个线程中执行。

现在,当我的程序退出时,我想终止该service并让线程退出,但当我在onDestroy中执行thread.stop的时候,总是会提示一个错误,"Deprecated Thread methods are not supported"。

由于我的线程是阻塞的,所以不能用设置变量的方法来让线程自己退出。

请问如何正确终止该线程?如果不中止的话,下次程序启动的时候,会提示5678端口被占用。

[解决办法]
找个线程执行server.close();
accept会抛异常退出来

热点排行