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

Java Concurrency – วิธีสลีป ()


ฟังก์ชั่นการนอนหลับ

ฟังก์ชันสลีปนี้ใช้เพื่อให้แน่ใจว่าเธรดที่รันอยู่เข้าสู่โหมดสลีปเป็นเวลามิลลิวินาทีที่กำหนด ซึ่งจะถูกส่งผ่านเป็นพารามิเตอร์ไปยังฟังก์ชัน เธรดหยุดดำเนินการตามจำนวนมิลลิวินาทีนั้น

มาดูตัวอย่างกัน

ตัวอย่าง

import java.lang.*;
public class Demo implements Runnable{
   Thread my_t;
   public void run(){
      for (int i = 0; i < 3; i++){
         System.out.println(Thread.currentThread().getName()+ " " + i);
         try{
            Thread.sleep(100);
         }
         catch (Exception e){
            System.out.println(e);
         }
      }
   }
   public static void main(String[] args) throws Exception{
      Thread my_t = new Thread(new Demo());
      my_t.start();
      Thread my_t2 = new Thread(new Demo());
      my_t2.start();
   }
}

ผลลัพธ์

Thread-0 0
Thread-1 0
Thread-0 1
Thread-1 1
Thread-0 2
Thread-1 2

คลาสชื่อ Demo ใช้คลาส Runnable มีการกำหนดเธรดใหม่ ถัดไป ฟังก์ชัน 'run' ถูกกำหนดให้วนซ้ำชุดขององค์ประกอบและรับชื่อของเธรดโดยใช้ฟังก์ชัน 'getName' ในบล็อกการลอง ฟังก์ชันสลีปถูกเรียกบนเธรด และบล็อก catch จะพิมพ์ข้อยกเว้น หากมีเกิดขึ้น

ฟังก์ชันหลักจะสร้างอินสแตนซ์ใหม่ของเธรดขึ้นมา 2 อินสแตนซ์ และเริ่มใช้ฟังก์ชัน 'start' นอกจากนี้ ยังมีการวนซ้ำองค์ประกอบและฟังก์ชันผลตอบแทนถูกเรียกใช้บนเธรด