Java 中 Thread.sleep() 方法有什麼用?


sleep() 方法是 Thread 類的靜態方法,它使執行緒休眠/停止工作一段時間。如果執行緒被其他執行緒中斷,則 sleep() 方法會引發 InterruptedException,這意味著 Thread.sleep() 方法必須用 try 和 catch 塊括起來,或者必須用 throws 子句指定。

每當我們呼叫 Thread.sleep() 方法時,它都可以與執行緒排程器進行互動,以將當前執行緒置於等待狀態一段時間。等待時間結束後,執行緒從等待狀態變為執行狀態。

語法

public static void sleep(long milliseconds)
public static void sleep(long milliseconds, int nanoseconds)

sleep(long milliseconds) 方法使執行緒僅休眠一段時間(以毫秒為單位)。

sleep(long milliseconds, int nanoseconds) 方法使執行緒休眠一段時間(以毫秒為單位)加上一段時間(以納秒為單位)。

示例

class UserThread extends Thread {
   public void run() {
      for(int i=1; i <= 5; i++) {
         System.out.println("User Thread");
         try {
            Thread.sleep(1000); // sleep/stop a thread for 1 second
         } catch(InterruptedException e) {
            System.out.println("An Excetion occured: " + e);
         }
      }
   }
}
public class SleepMethodTest {
   public static void main(String args[]) {
      UserThread ut = new UserThread();
      ut.start(); // to start a thread
   }
}

輸出

User Thread
User Thread
User Thread
User Thread
User Thread

更新日期:27-11-2023

5K+ 瀏覽

開啟你的職業生涯

完成課程,獲得認證

馬上開始
廣告