0

私はJava同期の例を実行しています:

スレッド呼び出しコード:

Caller ob1 = new Caller(target, "Hello");
Caller ob2 = new Caller(target, "Synchronized");
Caller ob3 = new Caller(target, "World");

出力:

[こんにちは]
[世界]
【同期】

「Synchronized」は 2 番目に呼び出されるのに、最後に出力されるのはなぜですか?

4

1 に答える 1

1

実行順序に保証はありません。これは JVM の裁量です。

Thread インスタンスの start() メソッドを呼び出しても、メソッド呼び出しの直後に実行されるとは限りません。

于 2012-06-30T14:04:16.550 に答える