JAVA多线程该适时断掉吗,怎么断呢 本帖最后由 fanday 于 2010-06-09 15:32:17 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 MD里面要实现run方法吧。。跑完了就自己断了嘛 在主线程中调用子线程的join方法,就会等子线程结束后再执行下面的代码了。Md md = new Md();Thread t = new Thread(md);t.start();t.join();也可以在子线程里设置一个标识boolean isCompleted = false,在程序最后设置标识:isCompleted = true;在主线程中:Md md = new Md();Thread t = new Thread(md);t.start();while(true){ if(t.isCompleted){ break; }} while(true){ Md md = new Md(); new Thread(md).start();}是在一个线程的run方法里面吧?如果是,你这样的代码本来就没什么道理,只能说测试用的。关于你说的什么时候断掉,就是退出这个while, 那要看具体需求,你需要什么时候断掉。 比如你只要new 100个新线程,int i=0;while(true){ Md md = new Md(); new Thread(md).start(); if(i++==100){ break; }} 这个还是你考滤,你要实现什么样的逻辑了,呵while(true){ if ("bye".equals(XXX)){ break;}} 不要用while(true)用一个变量作为条件,你想断掉线程就让条件变为false线程执行完毕自然断开 在java.util.concurrent包下有这么一个类FutureTask<V>,“可使用 FutureTask 包装 Callable 或 Runnable 对象。因为 FutureTask 实现了 Runnable,所以可将 FutureTask 提交给 Executor 执行。”该类有个public boolean cancel(boolean mayInterruptIfRunning)方法,可实现“断掉”当前正在执行的任务,不过具体的还是看文档吧~ :-) 关于实现一个小型项目的步骤 线程问题! 关于JAVA本身的类库的问题``` 关于arraylist的问题,各位看看 高手赐教:请问有哪些api可以对某个目录下的文件的增删、修改、属性变化等进行监测?(一个自学者) 轻松来捡分:一个菜鸟的入门问题?谢谢!! this指针问题,分大大的给 概念问题,新手送分 jbuilder4不好用 Java FTPClient问题 求简单的threadpool程序,急! 关于jvm方法区?
Thread t = new Thread(md);
t.start();
t.join();
也可以在子线程里设置一个标识boolean isCompleted = false,在程序最后设置标识:isCompleted = true;
在主线程中:Md md = new Md();
Thread t = new Thread(md);
t.start();
while(true){
if(t.isCompleted){
break;
}
}
Md md = new Md();
new Thread(md).start();
}是在一个线程的run方法里面吧?
如果是,你这样的代码本来就没什么道理,只能说测试用的。关于你说的什么时候断掉,就是退出这个while, 那要看具体需求,你需要什么时候断掉。 比如你只要new 100个新线程,
int i=0;
while(true){
Md md = new Md();
new Thread(md).start();
if(i++==100){
break;
}
}
while(true)
{
if ("bye".equals(XXX))
{
break;
}
}
在java.util.concurrent包下有这么一个类FutureTask<V>,“可使用 FutureTask 包装 Callable 或 Runnable 对象。因为 FutureTask 实现了 Runnable,所以可将 FutureTask 提交给 Executor 执行。”该类有个public boolean cancel(boolean mayInterruptIfRunning)方法,可实现“断掉”当前正在执行的任务,不过具体的还是看文档吧~ :-)