Timer 클래스는 지정된 시간에 한 번 또는 반복적으로 실행되도록 작업을 예약합니다. 백그라운드에서 데몬 스레드로 실행될 수도 있습니다. 타이머를 데몬 스레드와 연결하려면 Boolean 값이 있는 생성자를 사용하세요. 타이머는 고정 지연 및 고정 속도로 작업을 예약합니다. 고정 지연에서는 시스템 GC에 의해 하나의 실행이 지연되면 다른 실행도 지연되며 각 실행은 이전 실행에 따라 지연됩니다. 고정 속도에서 System GC에 의해 실행이 지연되면 첫 번째 실행 시작 시간에 해당하는 고정 속도를 커버하기 위해 2-3번의 실행이 연속적으로 발생합니다. Timer 클래스는 타이머를 취소하는 cancel() 메서드를 제공합니다. 이 메서드가 호출되면 타이머가 만료됩니다. Timer 클래스는 TimerTask를 구현하는 작업만 수행합니다.
import java.util.*; public class TimerThreadTest { public static void main(String []args) { Task t1 = new Task("Task 1"); Task t2 = new Task("Task 2"); Timer t = new Timer(); t.schedule(t1, 10000); <strong>// executes for every 10 seconds</strong> t.schedule(t2, 1000, 2000); <strong>// executes for every 2 seconds</strong> } } class Task extends TimerTask { private String name; public Task(String name) { this.name = name; } public void run() { System.out.println("[" + new Date() + "] " + name + ": task executed!"); } }
[Thu Aug 01 21:32:44 IST 2019] Task 2: task executed! [Thu Aug 01 21:32:46 IST 2019] Task 2: task executed! [Thu Aug 01 21:32:48 IST 2019] Task 2: task executed! [Thu Aug 01 21:32:50 IST 2019] Task 2: task executed! [Thu Aug 01 21:32:52 IST 2019] Task 2: task executed! [Thu Aug 01 21:32:53 IST 2019] Task 1: task executed! [Thu Aug 01 21:32:54 IST 2019] Task 2: task executed! [Thu Aug 01 21:32:56 IST 2019] Task 2: task executed! [Thu Aug 01 21:32:58 IST 2019] Task 2: task executed! [Thu Aug 01 21:33:00 IST 2019] Task 2: task executed!
위 내용은 Java에서 타이머 스레드를 어떻게 구현할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!