C# - сборка мусора

Итак, я понял про стек и кучу (значения живут в стеке, ссылки на куче).

Когда я объявляю новый экземпляр класса, он живет на куче, со ссылкой на эту точку в памяти на стеке. Я также знаю, что C# делает свою собственную сборку мусора (т.е. он определяет, когда экземпляр класса больше не используется, и возвращает память).

У меня 2 вопроса:

  1. Правильно ли я понимаю сборку мусора?
  2. Могу ли я сделать свою собственную? Если да, то есть ли реальная польза от того, чтобы делать это самому, или мне лучше просто оставить это.

Я спрашиваю потому, что у меня есть метод в цикле For. Каждый раз, когда я прохожу через цикл, я создаю новый экземпляр моего класса. В голове я представляю, как все эти классы валяются кучей, ничего не делают, только занимают память, и я хочу избавиться от них как можно быстрее, чтобы все было аккуратно и чисто!

Правильно ли я это понимаю или я что-то упустил?

12
задан svick 15 June 2013 в 17:31
поделиться