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