Найти тему
9 подписчиков

С точки зрения GC объект на который указывает локальная переменная может не дожить даже до конца области видимости этой переменной. JIT подготавливает информацию для GC не на основе области видимости переменных, а на основе их использования.


Допустим у вас есть метод длинной 10 строк. В первых трёх строках вы используете переменную, которая указывает на объект класса, тогда, если на 4-ой строке запустится GC, то он вполне может уничтожить объект, на который ссылается ваша переменная.
Около минуты