我有一个包含可运行的线程。 我需要这个无限循环,除非用户取消。 我不知道如何去做这件事。所有的帮助非常感谢。 干杯。你如何循环线程?
Q
你如何循环线程?
4
A
回答
9
我需要这个无限循环,除非用户取消。
很明显,你可以轻松地添加里面的run()
方法的循环:
new Thread(new Runnable() {
public void run() {
while (true) {
// do something in the loop
}
}
}).start();
它总是一个好主意,检查线程中断:
new Thread(new Runnable() {
public void run() {
// loop until the thread is interrupted
while (!Thread.currentThread().isInterrupted()) {
// do something in the loop
}
}
}).start();
如果你问如何你可以从另一个线程(如UI线程)中取消一个线程操作,那么你可以这样做:
private final volatile running = true;
...
new Thread(new Runnable() {
public void run() {
while (running) {
// do something in the loop
}
}
}).start();
...
// later, in another thread, you can shut it down by setting running to false
running = false;
我们需要使用volatile boolean
,以便在另一个线程中看到一个线程中字段的更改。
相关问题
- 1. 如何循环线程
- 2. 你如何在for循环
- 3. Python线程循环
- 4. 如何让线程继续循环
- 5. C#多线程在for循环,如何检查所有线程
- 6. 你如何摆脱并行循环? ParallelBreak
- 7. jqGrid你如何循环网格?
- 8. 你如何循环$ _FILES数组?
- 9. 你如何使用循环功能?
- 10. 线程用于循环
- 11. python循环多线程
- 12. 游戏循环 - 线程
- 13. Ruby中的线程循环
- 14. time.sleep块while循环线程
- 15. 无限循环多线程
- 16. 多线程foreach hashmap循环
- 17. 多线程for循环
- 18. 并行 - 线程?循环?
- 19. for循环中的线程
- 20. Java:线程无限循环
- 21. Java while循环和线程!
- 22. Java单线程循环
- 23. ANDROID - while循环内线程
- 24. C#TPL for循环 - 线程
- 25. 何时使用循环与单线程
- 26. 如何在for循环中多线程启动进程?
- 27. 如何在执行循环过程时退出forkIO线程
- 28. Python多进程/线程循环。
- 29. Java线程循环Stucks程序
- 30. 如何循环此程序?
简单地运行一个循环很容易。但是您可能希望线程处理来自主线程的命令/工作项目,对吗?空闲时睡觉?当被告知时戒烟? – 2012-03-21 20:17:50