Java兩次啓動線程

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

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

package com.yiibai;

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.yiibai.TestThreadTwice1.main(TestThreadTwice1.java:11)