Bug ID: 4410846 Unstarted Thread causes memory leak
どうみてもバグにしか思えないのだが、Sunは仕様のつもりでいたのだろうか。JDK5でようやく改善されたようである。確かにThreadオブジェクトの目的を考えればstartメソッドを呼び出さない使い方は邪道かもしれない。しかし、インスタンス化しただけでstartメソッドの呼び出しが運命づけられるのは行き過ぎではないか。いったいどんな思想の下で設計されたのだろうか。
ほかにもスプリアスウェイクアップの注意書きがいつの間にか追加されているし、Javaはスレッドの扱いが容易である一方で、結構落とし穴があるものだ。