Partager via


Assistant Débogage managé raceOnRCWCleanup

Mise à jour : novembre 2007

L'Assistant Débogage managé (MDA, Managed Debugging Assistant) raceOnRCWCleanup est activé lorsque le Common Language Runtime (CLR) détecte qu'un Wrapper pouvant être appelé par le runtime (RCW) est en cours d'utilisation lorsqu'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 utilisé sur un autre thread ou sur la pile des threads de libération. Un RCW utilisé ne peut 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

Ce MDA n'a aucun effet sur le CLR.

Sortie

Un message décrivant l'erreur.

Configuration

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

Voir aussi

Concepts

Diagnostic d'erreurs avec les Assistants de débogage managés

Vue d'ensemble du marshaling d'interopérabilité

Référence

MarshalAsAttribute

Autres ressources

Interopérabilité