Java兩次啟動線程

Java能否兩次啟動同一線程?
答案是:不能 。啟動線程後,永遠不能再次啟動。 如果這樣做,則拋出IllegalThreadStateException。 在這種情況下,線程將運行一次,但第二次,它將拋出異常。

通過下麵的例子來理解它:

package com.zaixian;

public class TestThreadTwice1 extends Thread {
    public void run() {
        System.out.println("Start running...");
    }

    public static void main(String args[]) {
        TestThreadTwice1 t1 = new TestThreadTwice1();
        t1.start();
        t1.start();
    }
}

執行上面示例代碼,將會拋出異常:

Exception in thread "main" Start running...
java.lang.IllegalThreadStateException
    at java.lang.Thread.start(Unknown Source)
    at com.zaixian.TestThreadTwice1.main(TestThreadTwice1.java:11)

上一篇: Java線程睡眠 下一篇: 線程直接調用run()方法而不是start()方法