下記のプログラムで、改めてヒープとGCとぬるぽの関係を思い知らされたw
オブジェクトとしては参照できなくなっても、スレッドとしてはexecuteメソッドを実行し続けるという状況になってる。
スレッドがオブジェクトを参照している、という状態にはならないらしいな。
package hoge.fuga; public class Test { private int value; public static void main(String[] args) { new Test().execute(); } public void execute() { this.value = 1; for ( … ) { if (this.value == 1) { // NullPointerException … } …(そこそこ時間がかかって、ヒープを利用する処理) } } }