日期:2014-05-20  浏览次数:20742 次

关闭线程
有个类,A类和B类,B类,B类继承了Runnable
现在在A类有new Thread(new B()).start();现在B线程就在运行了。现在我要在B类里面停掉这个线程并销毁,然后在B类里面启运B线程,怎么做这个

------解决方案--------------------
自己销毁自己?见过狠的,没见过这么狠的。

不过其实你只需要在B类里面新建一个线程,并启动它就行了;run方法结束结束,这个线程自然就销毁了。唯一的技巧是run()函数中,需要做个判断。

private boolean isMySelf = false;

public void run() {
if (isMySelf) {
doFun(); // 调用你想干的事情的函数;
} else {
this.isMySelf = true;
new Thread(this).start();
}
}