高橋(智)です。 torutk@xxxxxxxxxxxx wrote: > > 同じ環境 CPU(AMD Opteron) x 2, WindowsXP(x64 Edition), J2SE 5.0 Update6(ServerVM) で > >以下のように書き換えたものを実行してみたのですが、やはり終了しません。t1.join(); が戻って > >来ません。 > :[コード略] > > 村山さんとの議論から、智弘さんが書き換えたコード(スレッド間で共有する > 変数を削除)では、HotSpotコンパイラが最適化してrun()が終了しなくなる > と思われます。 スレッド間で共有する変数が無くても、JDK1.4.2でも、CPUが1個でも、 Server VM だと run() が終了しなくなるみたいですね... -- 高橋智宏