java.lang.Thread.sleep(long millis, int nanos)方法实例
java.lang.Thread.sleep(long millis, int nanos) 方法使当前执行的线程睡眠指定的毫秒数加纳秒指定数量,受制于精度和系统计时器和调度程序精度。
声明
以下是java.lang.Thread.sleep()方法的声明
public static void sleep(long millis, int nanos) throws InterruptedException
参数
-
millis -- 这是以毫秒为单位的休眠时间。
-
nanos -- 这是0-999999附加的纳秒睡眠时间。
返回值
此方法不返回任何值。
异常
-
IllegalArgumentException -- 如果millis值为负或毫微秒的值不在0-999999范围内。
-
InterruptedException -- 如果任何线程中断当前线程。当这种异常被抛出当前线程的中断状态被清除。
例子
下面的例子显示java.lang.Thread.sleep()方法的使用。
package com.yiibai; import java.lang.*; public class ThreadDemo implements Runnable { Thread t; public void run() { for (int i = 10; i < 13; i++) { System.out.println(Thread.currentThread().getName() + " " + i); try { // thread to sleep for 1000 milliseconds plus 500 nanoseconds Thread.sleep(1000, 500); } catch (Exception e) { System.out.println(e); } } } public static void main(String[] args) throws Exception { Thread t = new Thread(new ThreadDemo()); // this will call run() function t.start(); Thread t2 = new Thread(new ThreadDemo()); // this will call run() function t2.start(); } }
让我们来编译和运行上面的程序,这将产生以下结果:
Thread-0 10 Thread-1 10 Thread-0 11 Thread-1 11 Thread-0 12 Thread-1 12