Java線程睡眠

Thread類的sleep()方法用於在指定的時間內睡眠線程。

java中sleep()方法的語法
Thread類爲睡眠線程提供了兩種方法:

  • public static void sleep(long miliseconds)throws InterruptedException
  • public static void sleep(long miliseconds, int nanos)throws InterruptedException

java中的sleep方法示例

示例代碼 -

package com.yiibai;

class TestSleepMethod1 extends Thread {
    public void run() {
        for (int i = 1; i < 5; i++) {
            try {
                Thread.sleep(500);
            } catch (InterruptedException e) {
                System.out.println(e);
            }
            System.out.println(i);
        }
    }

    public static void main(String args[]) {
        TestSleepMethod1 t1 = new TestSleepMethod1();
        TestSleepMethod1 t2 = new TestSleepMethod1();

        t1.start();
        t2.start();
    }
}

執行上面示例代碼,得到以下結果:

1
1
2
2
3
3
4
4

一次只執行一個線程。如果在指定的時間內休眠一個線程,那麼線程調度程序(shedular)將獲取另一個線程,依此類推。