温馨提示×

java settimeout 是否支持延迟执行

小樊
81
2024-11-29 10:49:41
栏目: 编程语言

Java 本身没有提供类似 JavaScript 的 setTimeout 的功能。但是,你可以使用 Java 的 ScheduledExecutorService 来实现延迟执行的功能。以下是一个简单的示例:

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

public class DelayedExecution {
    public static void main(String[] args) {
        // 创建一个具有单个线程的 ScheduledExecutorService
        ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();

        // 要延迟执行的任务
        Runnable task = () -> System.out.println("延迟执行的任务");

        // 设置延迟时间(单位:秒)
        long delay = 5;

        // 将任务提交给 ScheduledExecutorService,以便在指定的延迟后执行
        executor.schedule(task, delay, TimeUnit.SECONDS);

        // 在任务执行完成后关闭 ScheduledExecutorService
        executor.shutdown();
    }
}

在这个示例中,我们创建了一个 ScheduledExecutorService,然后使用 schedule 方法提交一个任务,该任务将在指定的延迟(5 秒)后执行。最后,我们关闭了 ScheduledExecutorService

0