-1
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 루프 내에서 타이머를 실행하는 데 문제가 있습니다. – hawx
작업을 반복하여 한 번만 예약하십시오. 당신이'schedule'라고 부르는 쓰레드는 무의미합니다.'Timer'는 예약 된 작업을 위해 자체 스레드를 유지합니다. –