2017-01-30 9 views
-4

Я знаю, что деструктор вызывается сборщиком мусора, когда объект больше не используется. Но я хочу знатьКак вызвать Destructor

Как назвать деструктор через код C#?

Если возможно, приведите несколько базовых примеров для понимания.

+0

Вы даже потрудились в этом Google? – tnw

+0

Почему, по-вашему, вам нужно позвонить деструктору? –

+2

Вам почти наверняка не нужно * иметь * финализатор (у C# нет деструкторов, только финализаторы), не говоря уже о его ручном вызове. У вас почти наверняка должен быть только метод Dispose, и вы должны * вручную вызывать * это *. – Servy

ответ

1

Вы не вызывать деструктор в .NET Управляемая куча обрабатывается CLR и только CLR.

Однако вы можете определить деструктор класса, деструктор будет называться, как только объект получает собранные GC

class Foo 
    { 
     public Foo() 
     { 
      Console.WriteLine("Constructed"); 
     } 

     ~Foo() 
     { 
      Console.WriteLine("Destructed"); 
     } 
    } 

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

 Смежные вопросы

  • Нет связанных вопросов^_^