我用一个map,在map中我加了一个id-------HashMap<String ,Thread> map = new HashMap<String ,Thread>();
然后我获得一个map,Thread th = map.get(ID);th.stop;为什么关闭不了线程呢
然后我获得一个map,Thread th = map.get(ID);th.stop;为什么关闭不了线程呢
解决方案 »
- 还没入门,所以这个问题我也不知道该怎么问
- java向数据库中插入数据为什么总会报错未找到存储过程xp_sendmail?
- 如何用struts2来写个文件下载
- 请帮帮忙!
- word 回写怎么做
- 初学,看完Thinking in Java感觉...
- ★在SUN 的网站上何处下载JDK? 我在 java.sun.com 上转了一个小时,也不知道哪个SDK 才是我该下载的!请指教★
- eclipse中新建类怎么只有:java.lang.object一种?
- 接口、抽象类,看书看不懂,不明白是什莫东西,有沈莫用
- 为什么在Win2k server里面没有CLASSPATH环境变量也能编译?在线等待,一定给分
- JDBC连接数据库SQL server2005
- java如何调用windows查找文件对话框
假设线程当前状态是等待,包括使用sleep,wait等,可以使用interrupt来打断等待
一般情况下,线程内部应该是出于一个while循环,所以一般来说while总是以一个boolean或者int标识作为循环标志的,类似这样的代码:public class TestThread extends Thread {
private boolean running = true; public void run() {
while(running) {
// TODO
}
} public void stopThread() {
this.running = false;
}
}可以调用TestThread上的stopThead方法,使得线程在执行完当前一次操作之后跳出while循环来结束线程
把run方法里面的内容全部写在try 里面。
try{
}finally{
return;
}
th.yield();
}
catch(Exception ex){
ex.printStackTrace();
}
试试