разрушение переменной или массива в C#

У меня есть переменная или массив, в котором я больше не нуждался. Как уничтожить их? Извините за вопрос новичка.

12
задан Alexry 28 April 2010 в 07:20
поделиться

5 ответов

Не нужна. Просто позвольте ссылке выйти из области видимости, и она будет автоматически сборщиком мусора .

11
ответ дан 2 December 2019 в 18:19
поделиться

в .NET Сборщик мусора сделает это за вас! Но на самом деле это может зависеть от того, что вы имеете в виду, когда пишете, что вам больше не «нужна» ваша переменная

2
ответ дан 2 December 2019 в 18:19
поделиться

.NET имеет встроенный сборщик мусора. Достаточно прекратить ссылаться на массив или переменную, когда они вам не нужны. Нет необходимости в явном вызове уничтожения.

1
ответ дан 2 December 2019 в 18:19
поделиться

В .Net или любом другом языке со сборкой мусора, если на то пошло, вы просто освобождаете все ссылки, которые у вас есть на этот объект, и сборщик мусора в конечном итоге соберет его. Пример:

   int[] arr = new int[20];
   ....
   // when no longer needed set all references to null
   arr = null;
   // also creating a new object will release the old one automatically if there are no more references to it
   arr = new int[40]; // old array will be garbage collected

Также обратите внимание, что вам не нужно делать это каждый раз время, только когда вы явно хотите освободить объект, не освобождая его родительский объект, или если ссылка является статическим полем. Также освобождение объектов не требуется для локальных (метод) переменных, только для полей классов или статических полей.

5
ответ дан 2 December 2019 в 18:19
поделиться

Garbage-Collector - это здорово, но объект фактически уничтожается, когда Garbage-Collector собирает объекты, на которые больше нет ссылок: позже... Поэтому, если вам нужно, чтобы объект был утилизирован немедленно, чтобы был вызван код уничтожения, вы должны реализовать интерфейс IDisposable и вызвать метод Dispose перед разыменованием вашего объекта.

1
ответ дан 2 December 2019 в 18:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: