4

Javaでは、次の例外が発生します。

Exception in thread "main" java.lang.IllegalThreadStateException
    at java.lang.Thread.start(Unknown Source)
    at Threads4.go(Threads4.java:14)
    at Threads4.main(Threads4.java:4)

コードは次のとおりです。

public class Threads4 {
    public static void main(String[] args){
        new Threads4().go();
    }
    void go(){
        Runnable r = new Runnable(){
            public void run(){
                System.out.println("foo");
            }
        };
        Thread t = new Thread(r);
        t.start();
        t.start();

    }
}

例外とはどういう意味ですか?

4

6 に答える 6

5

スレッドを 2 回開始しようとしています。

于 2013-02-15T18:34:07.557 に答える
1

スレッドを 2 回開始することはできません。

于 2013-02-15T18:34:30.130 に答える
0

スレッドは1回だけ開始する必要があります。スレッドの実行が完了した場合にのみ、スレッドを再開できます。

以下のコードは例外をスローしません:

t.start();
if(!t.isAlive()){
   t.start();
 }
于 2013-02-15T18:37:23.173 に答える
0

スレッドを 2 回開始することはできません。

t.start();
t.start();

すでに開始されているものを開始しようとしているので、取得しますIllegalThreadStateException

于 2013-02-15T18:34:38.317 に答える
0

同じスレッドを 2 回開始することはできません。

別のスレッドを作成します。

Thread thread2 = new Thread(r);
thread2.start();
于 2013-02-15T18:34:50.177 に答える