2 donghejk donghejk 于 2016.04.16 14:29 提问

android 关闭线程问题

图片说明

关闭不了线程,一调用syop()方法就报错。

3个回答

CSDNXIAOD
CSDNXIAOD   2016.04.16 14:32

Android线程问题
关于Android的线程问题
Android Service 线程问题
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

luochoudan
luochoudan   Ds   Rxr 2016.04.16 16:32

不建议用stop方法来强制关闭线程,不安全,就好比你的电脑突然被切断了电源。可考虑控制线程的运行条件来实现;或者尝试interrupt()方法;或者实现Future接口来创建线程。

eyishion
eyishion   2016.04.16 16:35

你是自学的?
stop()
已过时。 该方法具有固有的不安全性。用 Thread.stop 来终止线程将释放它已经锁定的所有监视器(作为沿堆栈向上传播的未检查 ThreadDeath 异常的一个自然后果)。如果以前受这些监视器保护的任何对象都处于一种不一致的状态,则损坏的对象将对其他线程可见,这有可能导致任意的行为。stop 的许多使用都应由只修改某些变量以指示目标线程应该停止运行的代码来取代。目标线程应定期检查该变量,并且如果该变量指示它要停止运行,则从其运行方法依次返回。如果目标线程等待很长时间(例如基于一个条件变量),则应使用 interrupt 方法来中断该等待。有关更多信息,请参阅为何不赞成使用 Thread.stop、Thread.suspend 和 Thread.resume?。
这是javaApI种的解释;早被舍弃了,不要用它了。你看看到网上看看一些多线程的视频教程,那样你可能就懂了。
要想停止线程只有让run()方法结束,线程就停止了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!