Partager via


Assistant Débogage managé raceOnRCWCleanup

Remarque

Cet article est spécifique au .NET Framework. Elle ne s’applique pas aux implémentations plus récentes de .NET, notamment .NET 6 et versions ultérieures.

L’Assistant Débogage managé (MDA) raceOnRCWCleanup est activé quand le Common Language Runtime (CLR) détecte qu’un wrapper RCW est en cours d’utilisation au moment où un appel visant à le libérer est effectué à l’aide d’une commande telle que la méthode Marshal.ReleaseComObject.

Symptômes

Violations d'accès ou altération de la mémoire pendant ou après la libération d'un RCW à l'aide de ReleaseComObject ou d'une méthode similaire.

Cause

Le RCW est en cours d'utilisation sur un autre thread ou sur la pile des threads de libération, et ne peut donc pas être libéré.

Résolution

Ne libérez pas un RCW qui pourrait être utilisé dans le thread actuel ou dans d'autres threads.

Effet sur le runtime

Cet Assistant Débogage managé n'a aucun effet sur le CLR.

Sortie

Message décrivant l'erreur.

Configuration

<mdaConfig>
  <assistants>
    <raceOnRCWCleanup/>
  </assistants>
</mdaConfig>

Voir aussi