Thread.DisableComObjectEagerCleanup Méthode
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.
Désactive le nettoyage automatique des wrappers RCW (Runtime Callable Wrapper) pour le thread actuel.
public:
void DisableComObjectEagerCleanup();
public void DisableComObjectEagerCleanup ();
[System.Security.SecurityCritical]
public void DisableComObjectEagerCleanup ();
member this.DisableComObjectEagerCleanup : unit -> unit
[<System.Security.SecurityCritical>]
member this.DisableComObjectEagerCleanup : unit -> unit
Public Sub DisableComObjectEagerCleanup ()
- Attributs
Remarques
Par défaut, le common language runtime (CLR) nettoie automatiquement les wrappers pouvant être appelés par le Runtime. Le CLR pompe les messages pendant le nettoyage, ce qui peut entraîner des problèmes de réentrance pour certaines applications qui répondent aux critères inhabituels suivants :
L’application effectue son propre pompage de messages.
L’application doit contrôler précisément le moment où se produit le pompage des messages.
De telles applications peuvent utiliser la DisableComObjectEagerCleanup méthode pour empêcher le CLR d’effectuer une récupération automatique des wrappers pouvant être appelés par le Runtime.
Quand cette méthode a été appelée sur un thread, le nettoyage automatique ne peut pas être réactivé pour ce thread. Quand votre application est prête à nettoyer les wrappers pouvant être appelés par le runtime, utilisez la Marshal.CleanupUnusedObjectsInCurrentContext méthode pour demander au runtime de nettoyer tous les wrappers pouvant être appelés par le runtime dans le contexte actuel. Le pompage de messages se produit pendant l’exécution de la méthode.