Environment.HasShutdownStarted Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient une valeur indiquant si le déchargement du domaine d'application actuel est en cours ou si le Common Language Runtime s'arrête.
public:
static property bool HasShutdownStarted { bool get(); };
public static bool HasShutdownStarted { get; }
static member HasShutdownStarted : bool
Public Shared ReadOnly Property HasShutdownStarted As Boolean
Valeur de propriété
true
si le domaine d’application actuel est déchargé ou si le CLR s’arrête ; sinon, false
.
Remarques
.NET Framework uniquement : lorsque le CLR décharge un domaine d’application, il exécute les finaliseurs sur tous les objets qui ont une méthode finaliseur dans ce domaine d’application. Lorsque le CLR s’arrête, il démarre le thread finaliseur sur tous les objets qui ont une méthode finaliseur. La HasShutdownStarted propriété retourne true
uniquement après le démarrage du thread finaliseur. Lorsque la propriété retourne true
, vous pouvez déterminer si un domaine d’application est en cours de déchargement ou si le CLR lui-même s’arrête en appelant la AppDomain.IsFinalizingForUnload méthode . Cette méthode retourne true
si des finaliseurs sont appelés parce que le domaine d’application se décharge ou false
si le CLR s’arrête.
La HasShutdownStarted propriété retourne false
si le thread finaliseur n’a pas été démarré.
À l’aide de cette propriété, vous pouvez déterminer s’il faut accéder aux variables statiques dans votre code de finalisation. Si un domaine d’application ou le CLR s’arrête, vous ne pouvez pas accéder de manière fiable à un objet disposant d’une méthode de finalisation et référencé par un champ statique. Cela est dû au fait que ces objets ont peut-être déjà été finalisés.