关闭线程 有个类,A类和B类,B类,B类继承了Runnable现在在A类有new Thread(new B()).start();现在B线程就在运行了。现在我要在B类里面停掉这个线程并销毁,然后在B类里面启运B线程,怎么做这个 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 自己销毁自己?见过狠的,没见过这么狠的。不过其实你只需要在B类里面新建一个线程,并启动它就行了;run方法结束结束,这个线程自然就销毁了。唯一的技巧是run()函数中,需要做个判断。private boolean isMySelf = false;public void run() { if (isMySelf) { doFun(); // 调用你想干的事情的函数; } else { this.isMySelf = true; new Thread(this).start(); }} 现在是这样的A类public class A{ public static void main(String arg) { try { new Thread(new B()).start(); } catch(Exception e) { logger.error(e.toString); } }}B类public class B implements Runnable{ void run() { try { //做该做的事 } catch(Exception e) { logger.warn("......"); //主要就是要这里,这里抛了异常后,不能让程序停掉,面是让线程停掉,然后重新起动线程 } }} catch(Exception e) { logger.warn("......"); //主要就是要这里,这里抛了异常后,不能让程序停掉,面是让线程停掉,然后重新起动线程 new Thread(this).start();} 请问下,当抛了异常,走到catch里面时,当前线程会停掉?好像是如果只接抛exception才会停吧,因为我是直接打的log,当前线程好像没有被停掉吧 catch执行完了,不就是run()函数的末尾了?那不就自然结束了?反正在你的代码里面,我没看出来它能不结束的理由。 这个时间轴滚动的效果怎么实现? 小弟求助String问题????????????? 环境(eclipse ,tomcat5.0)中出现错误:HTTP Status 500,帮助!! 帮忙写一个正则表达式 对执行结果不理解class [I 这个是什么东西?不信你们自己可以试试,很短的代码! java的排序问题 java Socket报文信息丢失的问题 用jni完成一个dll后,其他java程序怎样调用? 谁知道javadoc怎么用??????????? 关于Graphics类与Graphics2D类的用法,一点小问题 java怎么将a转换为ascii码 DOM4J 怎么添加一段Nodelist
if (isMySelf) {
doFun(); // 调用你想干的事情的函数;
} else {
this.isMySelf = true;
new Thread(this).start();
}
}
A类
public class A
{
public static void main(String arg)
{
try
{
new Thread(new B()).start();
}
catch(Exception e)
{
logger.error(e.toString);
}
}
}B类
public class B implements Runnable
{
void run()
{
try
{
//做该做的事
}
catch(Exception e)
{
logger.warn("......");
//主要就是要这里,这里抛了异常后,不能让程序停掉,面是让线程停掉,然后重新起动线程
}
}
}
logger.warn("......");
//主要就是要这里,这里抛了异常后,不能让程序停掉,面是让线程停掉,然后重新起动线程
new Thread(this).start();
}