Java 8 - juc - ScheduledExecutorService

import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;

/**
 * ScheduledExecutorService是一个接口,它扩展了ExecutorService接口,并提供了支持延迟执行和定期执行的调度线程池功能。
 *
 * ScheduledExecutorService允许在一定的延迟时间后执行任务,或者按固定的时间间隔重复执行任务。
 */
public class MyScheduledExecutorServiceExample {
    
    
    public static void main(String[] args) {
    
    
        ScheduledExecutorService scheduledExecutorService = Executors.newScheduledThreadPool(1);

        // 延迟执行任务
        scheduledExecutorService.schedule(() -> System.out.println("Delayed task executed."), 5, TimeUnit.SECONDS);

        // 固定延迟时间执行任务
        scheduledExecutorService.scheduleWithFixedDelay(() -> System.out.println("Fixed delay task executed."), 1, 3, TimeUnit.SECONDS);

        // 固定时间间隔执行任务
        scheduledExecutorService.scheduleAtFixedRate(() -> System.out.println("Fixed rate task executed."), 2, 2, TimeUnit.SECONDS);

        try {
    
    
            // 等待一段时间
            Thread.sleep(10000);
        } catch (InterruptedException e) {
    
    
            e.printStackTrace();
        }

        // 关闭调度线程池
        scheduledExecutorService.shutdown();
    }
}

猜你喜欢

转载自blog.csdn.net/qq_43116031/article/details/130937266