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

Java Concurrency - เมธอด sleep()

เมธอด sleep()

เมธอด sleep() ใช้หยุดการทำงานของ thread ที่กำลังรันอยู่เป็นจำนวน milliseconds ที่ระบุเป็นพารามิเตอร์ Thread จะหยุดทำงานชั่วคราวในช่วงเวลานั้น

ตัวอย่าง

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 implements Runnable มี thread และเมธอด run() วนลูป 3 รอบ พิมพ์ชื่อ thread และค่า i เรียก sleep(100) ใน try-catch ใน main สร้าง thread 2 ตัว เริ่มทั้งคู่ ทำให้สลับกันรันพร้อมกัน