【发布时间】:2014-01-30 12:31:46
【问题描述】:
我会链接以每 5 秒从我的线程中执行一个方法。我的课堂大纲如下。
private static Timer timer = new Timer();
public class myThread implements Runnable {
public void run() {
//listens for incoming messages
while(true) {
//process queue
timer.schedule(new TimerTask() {
process_queue();
}, 5*1000);
}
}
public static void process_queue() {
//processes queue
System.out.println("boom");
}
}
任何帮助将不胜感激。
【问题讨论】:
-
你遇到了什么问题?
-
我需要能够不断地监听传入的消息,但每 5 秒处理一次来自 db 的队列。我在 while 循环中运行计时器时遇到问题。
-
安排一次任务,重复。您调用
schedule的线程无关紧要,Timer为计划任务维护自己的线程。 -
如果别无选择,我想我可以在完成后安排一次任务。
标签: java multithreading timer counter