java如何睡眠
Java 线程睡眠的方法
在 Java 中,可以通过 Thread.sleep() 方法使当前线程暂停执行一段时间。该方法接受一个以毫秒为单位的参数,表示线程需要暂停的时间。

Thread.sleep(1000); // 线程睡眠 1 秒
处理中断异常
Thread.sleep() 方法会抛出 InterruptedException,因此需要捕获该异常或在方法签名中声明抛出。

try {
Thread.sleep(2000); // 线程睡眠 2 秒
} catch (InterruptedException e) {
Thread.currentThread().interrupt(); // 重新设置中断标志
System.err.println("线程睡眠被中断");
}
使用 TimeUnit 实现更可读的睡眠
java.util.concurrent.TimeUnit 类提供了更直观的时间单位转换,使代码更易读。
import java.util.concurrent.TimeUnit;
try {
TimeUnit.SECONDS.sleep(3); // 线程睡眠 3 秒
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
System.err.println("线程睡眠被中断");
}
注意事项
Thread.sleep()会让当前线程进入阻塞状态,但不会释放锁。- 睡眠时间结束后,线程会进入就绪状态,等待 CPU 调度。
- 避免在主线程或 UI 线程中使用睡眠,可能导致应用程序无响应。






