Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

การใช้เมธอด Thread.sleep () ใน Java คืออะไร?


The sleep() เมธอดเป็น คงที่ วิธีการ กระทู้ และมันทำให้เธรด นอน/หยุด ทำงานในช่วงเวลาที่กำหนด เมธอด sleep() ส่ง InterruptedException ถ้าเธรดถูกขัดจังหวะโดยเธรดอื่น นั่นหมายความว่า Thread.sleep() ต้องปิดเมธอดภายใน try และ catch blocks หรือต้องระบุด้วย พ่น ข้อ . เมื่อใดก็ตามที่เราเรียก Thread.sleep() เมธอด มันสามารถโต้ตอบกับ ตัวกำหนดเวลาเธรด เพื่อวางเธรดปัจจุบันเป็น สถานะรอ ในช่วงเวลาหนึ่ง เมื่อหมดเวลารอ เธรดจะเปลี่ยนจาก รอ กำหนดให้ รันได้ รัฐ.

ไวยากรณ์

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

The การนอนหลับ(นานเป็นมิลลิวินาที) วิธีทำให้เธรดเข้าสู่โหมดสลีปสำหรับมิลลิวินาทีที่ระบุเท่านั้น

The การนอนหลับ (มิลลิวินาทียาว int นาโนวินาที) วิธีทำให้เธรดเข้าสู่โหมดสลีปสำหรับบางมิลลิวินาทีบวกนาโนวินาที

ตัวอย่าง

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