Aracılığıyla paylaş


Environment.HasShutdownStarted Özellik

Tanım

Geçerli uygulama etki alanının kaldırıldığını veya ortak dil çalışma zamanının (CLR) kapatıldığını belirten bir değer alır.

public:
 static property bool HasShutdownStarted { bool get(); };
public static bool HasShutdownStarted { get; }
member this.HasShutdownStarted : bool
Public Shared ReadOnly Property HasShutdownStarted As Boolean

Özellik Değeri

Boolean

true geçerli uygulama etki alanı kaldırılıyorsa veya CLR kapatılıyorsa; aksi takdirde , false.

Açıklamalar

Yalnızca .NET Framework: CLR bir uygulama etki alanını kaldırdığında, bu uygulama etki alanında sonlandırıcı yöntemi olan tüm nesnelerde sonlandırıcıları çalıştırır. CLR kapatıldığında, sonlandırıcı yöntemi olan tüm nesnelerde sonlandırıcı iş parçacığını başlatır. HasShutdownStarted özelliği yalnızca sonlandırıcı iş parçacığı başlatıldıktan sonra döndürürtrue. özelliği döndürdüğünde true, yöntemini çağırarak AppDomain.IsFinalizingForUnload bir uygulama etki alanının kaldırıldığını veya CLR'nin kendisinin kapatıldığını belirleyebilirsiniz. Bu yöntem, uygulama etki alanı kaldırıldığından veya false CLR kapatıldığında sonlandırıcıların çağrılıp çağrılmadığını döndürürtrue.

Sonlandırıcı HasShutdownStarted iş parçacığı başlatılmadıysa özelliği döndürür false .

Bu özelliği kullanarak, sonlandırma kodunuzda statik değişkenlere erişip erişmeyeceğini belirleyebilirsiniz. Uygulama etki alanı veya CLR kapatılıyorsa, bir sonlandırma yöntemi olan ve statik bir alan tarafından başvurulan hiçbir nesneye güvenilir bir şekilde erişemezsiniz. Bunun nedeni, bu nesnelerin zaten sonlandırılmış olmasıdır.

Şunlara uygulanır

Ayrıca bkz.