İngilizce dilinde oku

Aracılığıyla paylaş


Object.Finalize Yöntem

Tanım

Bir nesnenin, atık toplama tarafından geri kazanılmadan önce kaynakları boşaltmaya ve diğer temizleme işlemlerini gerçekleştirmeye çalışmasına izin verir.

C#
~Object();

Örnekler

Aşağıdaki örnek, geçersiz kılan bir nesne yok edildiğinde yönteminin çağrıldığını doğrular FinalizeFinalize . Bir üretim uygulamasında yönteminin Finalize nesne tarafından tutulan yönetilmeyen kaynakları serbest bırakmak için geçersiz kılınacağını unutmayın. Ayrıca, C# örneğinin yöntemini geçersiz kılma yerine bir yıkıcı sağladığını Finalize unutmayın.

C#
using System;
using System.Diagnostics;

public class ExampleClass
{
   Stopwatch sw;

   public ExampleClass()
   {
      sw = Stopwatch.StartNew();
      Console.WriteLine("Instantiated object");
   }

   public void ShowDuration()
   {
      Console.WriteLine("This instance of {0} has been in existence for {1}",
                        this, sw.Elapsed);
   }

   ~ExampleClass()
   {
      Console.WriteLine("Finalizing object");
      sw.Stop();
      Console.WriteLine("This instance of {0} has been in existence for {1}",
                        this, sw.Elapsed);
   }
}

public class Demo
{
   public static void Main()
   {
      ExampleClass ex = new ExampleClass();
      ex.ShowDuration();
   }
}
// The example displays output like the following:
//    Instantiated object
//    This instance of ExampleClass has been in existence for 00:00:00.0011060
//    Finalizing object
//    This instance of ExampleClass has been in existence for 00:00:00.0036294

yöntemini geçersiz kılan Finalize ek bir örnek için yöntemine GC.SuppressFinalize bakın.

Açıklamalar

Bu API hakkında daha fazla bilgi için bkz. Object.Finalize için ek API açıklamaları.

Şunlara uygulanır

Ürün Sürümler
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Ayrıca bkz.