Compartilhar via


Environment.HasShutdownStarted Propriedade

Definição

Obtém um valor que indica se o domínio de aplicativo atual está sendo descarregado ou o se o CLR (Common Language Runtime) está sendo desligado.

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

Valor da propriedade

Boolean

true se o domínio do aplicativo atual estiver sendo descarregado ou o CLR estiver sendo desligado; caso contrário, false.

Comentários

.NET Framework somente: quando o CLR descarrega um domínio de aplicativo, ele executa os finalizadores em todos os objetos que têm um método de finalizador nesse domínio de aplicativo. Quando o CLR é desligado, ele inicia o thread do finalizador em todos os objetos que têm um método de finalizador. A HasShutdownStarted propriedade retorna true somente depois que o thread do finalizador é iniciado. Quando a propriedade retorna true, você pode determinar se um domínio do aplicativo está sendo descarregado ou se o próprio CLR está sendo desligado chamando o AppDomain.IsFinalizingForUnload método. Esse método retornará true se os finalizadores forem chamados porque o domínio do aplicativo está descarregando ou false se o CLR está sendo desligado.

A HasShutdownStarted propriedade retornará false se o thread do finalizador não tiver sido iniciado.

Usando essa propriedade, você pode determinar se deseja acessar variáveis estáticas em seu código de finalização. Se um domínio de aplicativo ou o CLR estiver sendo desligado, você não poderá acessar de forma confiável qualquer objeto que tenha um método de finalização e que seja referenciado por um campo estático. Isso ocorre porque esses objetos podem já ter sido finalizados.

Aplica-se a

Confira também