Environment.HasShutdownStarted Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets a value that indicates whether the current application domain is being unloaded or the common language runtime (CLR) is shutting down.
public:
static property bool HasShutdownStarted { bool get(); };
public static bool HasShutdownStarted { get; }
static member HasShutdownStarted : bool
Public Shared ReadOnly Property HasShutdownStarted As Boolean
Property Value
true
if the current application domain is being unloaded or the CLR is shutting down; otherwise, false
.
Remarks
.NET Framework only: When the CLR unloads an application domain, it runs the finalizers on all objects that have a finalizer method in that application domain. When the CLR shuts down, it starts the finalizer thread on all objects that have a finalizer method. The HasShutdownStarted property returns true
only after the finalizer thread has been started. When the property returns true
, you can determine whether an application domain is being unloaded or the CLR itself is shutting down by calling the AppDomain.IsFinalizingForUnload method. This method returns true
if finalizers are called because the application domain is unloading or false
if the CLR is shutting down.
The HasShutdownStarted property returns false
if the finalizer thread has not been started.
By using this property, you can determine whether to access static variables in your finalization code. If either an application domain or the CLR is shutting down, you cannot reliably access any object that has a finalization method and that is referenced by a static field. This is because these objects may have already been finalized.
Applies to
See also
.NET
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기