当前位置:首页 > Java

java 如何延时

2026-03-19 21:17:45Java

延时方法

在 Java 中实现延时操作可以通过以下几种方式实现:

Thread.sleep()

使用 Thread.sleep() 方法可以让当前线程暂停执行指定的毫秒数。该方法会抛出 InterruptedException,需要进行异常处理。

java 如何延时

try {
    Thread.sleep(1000); // 延时 1000 毫秒(1 秒)
} catch (InterruptedException e) {
    e.printStackTrace();
}

TimeUnit.sleep()

TimeUnitjava.util.concurrent 包中的一个枚举类,提供了更直观的延时方法,底层仍然调用 Thread.sleep(),但支持更灵活的时间单位。

java 如何延时

try {
    TimeUnit.SECONDS.sleep(1); // 延时 1 秒
} catch (InterruptedException e) {
    e.printStackTrace();
}

ScheduledExecutorService

使用 ScheduledExecutorService 可以更灵活地安排延时任务,适合需要周期性或定时执行的场景。

ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
executor.schedule(() -> {
    System.out.println("延时任务执行");
}, 1, TimeUnit.SECONDS); // 1 秒后执行
executor.shutdown();

Object.wait()

Object.wait() 方法可以让当前线程进入等待状态,直到其他线程调用 notify()notifyAll()。通常用于线程间通信。

synchronized (lockObject) {
    try {
        lockObject.wait(1000); // 延时 1 秒或直到被唤醒
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
}

注意事项

  • Thread.sleep()TimeUnit.sleep() 会阻塞当前线程,不适合在主线程或 UI 线程中使用。
  • ScheduledExecutorService 更适合异步任务调度,避免阻塞主线程。
  • Object.wait() 需要配合同步块使用,通常用于多线程协作场景。

标签: java
分享给朋友:

相关文章

如何使用java

如何使用java

安装Java开发环境 下载并安装Java Development Kit(JDK),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME指向JDK安装路径…

如何自学java

如何自学java

选择合适的学习资源 从官方文档开始,Oracle提供的Java官方教程(Java Tutorials)是权威且免费的学习资料。在线平台如Codecademy、Coursera或Udemy提供互动式课程…

java如何创建数组

java如何创建数组

创建数组的基本方法 在Java中,数组是固定大小的同类型元素集合。创建数组需要声明数组类型并初始化。 声明数组 语法格式为 数据类型[] 数组名 或 数据类型 数组名[]: int[] arr1;…

java如何实现异步

java如何实现异步

Java实现异步的方法 Java中实现异步编程可以通过多种方式,每种方式适用于不同的场景和需求。以下是常见的实现方法: 使用Thread类 创建新线程执行异步任务是最基础的方式。通过继承Thread…

如何安装java运行环境

如何安装java运行环境

下载Java开发工具包(JDK) 访问Oracle官方网站或OpenJDK项目页面,选择适合操作系统的JDK版本进行下载。Windows用户通常选择.exe安装包,macOS用户选择.dmg,Linu…

java如何连接mysql数据库

java如何连接mysql数据库

连接 MySQL 数据库的步骤 添加 MySQL 驱动依赖 在项目中引入 MySQL 的 JDBC 驱动。如果使用 Maven,可以在 pom.xml 中添加以下依赖: <dependency…