2016-01-15 3 views
2

Я читал C# спецификации, но я не понимаю:Destructor и C# спецификация

Деструктора является элементом, который осуществляет действия, необходимые для разрушится экземпляр класса.

Не является ли GC, который предпринимает действия для уничтожения объекта, когда это начинает иметь право на уничтожение?

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

Возможно, я неверно истолковал, что это значит?

+1

Они часто упоминаются как «финализаторы» в 'C#', чтобы избежать путаницы. Связано: http://stackoverflow.com/a/4899622/1870760 –

+0

Уничтожить! = Уничтожить. – CodeCaster

+0

@CodeCaster, ответы на «Разница между деструктором, распоряжением и финализацией» не отвечают на мой вопрос! Мой вопрос не в той разнице, а в объяснении C# о том, что делает деструктор. Я не думаю, что мой вопрос является дубликатом. – xdevel2000

ответ

0

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

+0

Да, я знаю, но спецификация C# не говорит об этом ... – xdevel2000