>  기사  >  Java  >  자바 타이머에서 시간을 설정하는 방법

자바 타이머에서 시간을 설정하는 방법

小老鼠
小老鼠원래의
2023-12-26 16:31:371544검색

설정 방법: 1. TimerTask의 실행 방법을 사용하여 예약된 실행을 위한 작업을 정의합니다. 2. Timer의 일정 방법을 통해 타이머의 시작 시간, 간격 등을 설정할 수 있습니다. 프로그램이 시작된 후 즉시 실행됩니다. 그런 다음 1000밀리초마다 실행하고 타이머가 취소될 때까지 계속합니다.

자바 타이머에서 시간을 설정하는 방법

이 튜토리얼의 운영 체제: Windows 10 시스템, Dell G3 컴퓨터.

Java에서는 Timer 클래스와 TimerTask 클래스를 사용하여 예약된 작업을 구현할 수 있습니다. 다음은 Timer 및 TimerTask를 사용하여 타이머를 설정하고 작업을 실행하는 방법을 보여주는 간단한 예입니다.

import java.util.Timer;
import java.util.TimerTask;
public class TimerExample {
    public static void main(String[] args) {
        // 创建定时器对象
        Timer timer = new Timer();
        // 创建定时任务对象
        TimerTask task = new TimerTask() {
            @Override
            public void run() {
                // 在此处编写定时执行的任务
                System.out.println("Task executed at: " + System.currentTimeMillis());
            }
        };
        // 设置定时器,延迟0毫秒后开始执行任务,每隔1000毫秒执行一次
        timer.schedule(task, 0, 1000);
        // 等待一段时间后,取消定时任务
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // 取消定时任务
        timer.cancel();
        System.out.println("Timer canceled");
    }
}

위 예에서 TimerTask의 run 메소드는 정기적으로 실행될 작업을 정의합니다. 타이머의 스케줄 방식을 통해 타이머의 시작 시간, 간격 등을 설정할 수 있습니다. 이 예에서 작업은 프로그램이 시작된 직후 실행된 다음 1000밀리초마다 실행되고 타이머가 취소될 때까지 계속됩니다.

Timer 클래스는 Java에서 더 이상 사용되지 않습니다. ScheduledExecutorService를 사용하면 더 강력하고 유연한 예약 기능을 제공하므로 예약된 작업을 수행하는 것이 좋습니다. 다음은 ScheduledExecutorService를 사용하는 예입니다.

import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class ScheduledExecutorExample {
    public static void main(String[] args) {
        // 创建ScheduledExecutorService对象
        ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
        // 创建定时任务对象
        Runnable task = () -> {
            // 在此处编写定时执行的任务
            System.out.println("Task executed at: " + System.currentTimeMillis());
        };
        // 设置定时器,延迟0毫秒后开始执行任务,每隔1000毫秒执行一次
        scheduler.scheduleAtFixedRate(task, 0, 1000, TimeUnit.MILLISECONDS);
        // 等待一段时间后,关闭定时器
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // 关闭定时器
        scheduler.shutdown();
        System.out.println("Scheduler shutdown");
    }
}

이 예에서는 ScheduledExecutorService의 ScheduleAtFixedRate 메서드를 사용합니다. 해당 매개 변수에는 작업 개체, 초기 지연 시간, 간격 시간 및 시간 단위가 포함됩니다. 이 예에서 작업은 프로그램이 시작된 직후 실행된 다음 1000밀리초마다 실행되고 타이머가 꺼질 때까지 계속됩니다.

위 내용은 자바 타이머에서 시간을 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.