📜  Java中的 TimeUnit sleep() 方法及示例

📅  最后修改于: 2022-05-13 01:54:50.873000             🧑  作者: Mango

Java中的 TimeUnit sleep() 方法及示例

TimeUnit 类sleep()方法用于使用此时间单位执行 Thread.sleep。这是一种方便的方法,可将时间参数休眠为 Thread.sleep 方法所需的形式。

句法:

public void sleep(long timeout)
           throws InterruptedException

参数:此方法接受强制参数超时,这是睡眠的最短时间。如果这小于或等于零,则根本不睡觉。

返回值:此方法不返回任何内容。

异常:如果在睡眠时被中断,此方法将抛出InterruptedException

下面的程序说明了 TimeUnit sleep() 方法的实现:

方案一:

// Java program to demonstrate
// sleep() method of TimeUnit Class
  
import java.util.concurrent.*;
  
class GFG {
    public static void main(String args[])
    {
        // Get time to sleep
        long timeToSleep = 0L;
  
        // Create a TimeUnit object
        TimeUnit time = TimeUnit.SECONDS;
  
        try {
  
            System.out.println("Going to sleep for "
                               + timeToSleep
                               + " seconds");
  
            // using sleep() method
            time.sleep(timeToSleep);
  
            System.out.println("Slept for "
                               + timeToSleep
                               + " seconds");
        }
  
        catch (InterruptedException e) {
            System.out.println("Interrupted "
                               + "while Sleeping");
        }
    }
}
输出:
Going to sleep for 0 seconds
Slept for 0 seconds

方案二:

// Java program to demonstrate
// sleep() method of TimeUnit Class
  
import java.util.concurrent.*;
  
class GFG {
    public static void main(String args[])
    {
        // Get time to sleep
        long timeToSleep = 10L;
  
        // Create a TimeUnit object
        TimeUnit time = TimeUnit.SECONDS;
  
        try {
  
            System.out.println("Going to sleep for "
                               + timeToSleep
                               + " seconds");
  
            // using sleep() method
            time.sleep(timeToSleep);
  
            System.out.println("Slept for "
                               + timeToSleep
                               + " seconds");
        }
  
        catch (InterruptedException e) {
            System.out.println("Interrupted "
                               + "while Sleeping");
        }
    }
}
输出:
Going to sleep for 10 seconds
Slept for 10 seconds