Вам нужно избавиться от объектов и установить их на ноль? - PullRequest
285 голосов
/ 28 мая 2010

Вам нужно избавиться от объектов и установить для них значение null, или сборщик мусора очистит их, когда они выйдут из области видимости?

Ответы [ 12 ]

2 голосов
/ 28 июля 2011

Я тоже должен ответить. JIT генерирует таблицы вместе с кодом из статического анализа использования переменных. Эти записи таблицы являются «корнями GC» в текущем кадре стека. По мере продвижения указателя инструкций эти записи таблицы становятся недействительными и поэтому готовы к сборке мусора. Поэтому: если это переменная в области видимости, вам не нужно устанавливать ее в null - GC будет собирать объект. Если это член или статическая переменная, вы должны установить его в null

0 голосов
/ 28 мая 2010

В этом эпизоде ​​.NET Rocks есть хорошая дискуссия на эту тему (вместе с историей, лежащей в основе шаблона Dispose)!

http://www.dotnetrocks.com/default.aspx?showNum=10

...