📜  java中的睡眠毫秒(1)

📅  最后修改于: 2023-12-03 15:32:01.690000             🧑  作者: Mango

Java 中的睡眠毫秒

在 Java 编程中,我们经常需要对一个线程进行暂停一段时间,这时就可以使用 Thread 类提供的 sleep() 方法。这个方法会让当前线程睡眠指定的毫秒数,以达到暂停的目的。

语法
public static void sleep(long millis) throws InterruptedException;
参数

millis:需睡眠的毫秒数。

异常

InterruptedException:如果任何线程在睡眠期间中断了当前线程,则抛出此异常。

实例

以下示例演示了如何使用 sleep() 方法让程序暂停 1 秒:

public class SleepDemo {
    public static void main(String[] args) {
        try {
            System.out.println("开始暂停");
            Thread.sleep(1000); // 暂停 1 秒
            System.out.println("暂停结束");
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

输出:

开始暂停
暂停结束
注意事项
  1. sleep() 方法不会释放持有的锁。

  2. 调用 interrupt() 方法可以中断正在睡眠的线程,此时会抛出 InterruptedException 异常。

  3. 比起使用 Thread 类的 stop()、suspend()、resume() 等方法来暂停线程,使用 sleep() 方法更为安全和可控。

  4. 如果需要在时间到达前唤醒线程,可以使用 Object 类的 wait()、wait(long) 或 wait(long, int) 等方法进行等待。