public class MyThread extends Thread {
private volatile boolean isRunning = true; public void stopThread(){
isRunning=false;
} @Override
public void run() {
super.run();
ExecutorService pool = Executors.newFixedThreadPool(1);
while (isRunning) {
pool.execute(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
Log.e(TAG, "test___"+(i++));
}
});
}
}
}
我调用了stopThread后,但是还是会打印 Log.e(TAG, "test___"+(i++))中的内容。求正确停止的方法、
解决方案 »
- 我的Myeclipse出问题了,谁能解决一下!
- Java程序捆绑虚拟机
- java编程思想中有关"Class.forName()"和".class"的区别问题
- 【感谢】已经学习了java1.4的内容 想看看关于5.0的新特性 又不想在花钱买新书了 大家能不能像个办法
- 请教一个关于JDBC2.0里的一些问题
- [门外汉提问]Java程序如何编译运行?
- 先給分 再問 收郵件附件中文問題 急急急,幫忙看看
- JDBC的注册驱动的问题,有一些不了解。
- 哪位兄弟能提供LOG4J的完整文档?
- Dureek 在不在啊?找你急事……
- 一个文件可不可以开多个InputStream?
- java.sql.SQLException: ORA-00936: 缺失表达式
......
}
pool.shutdownNow();
在打印之前,判断是不是真的isRunning