共用方式為


raceOnRCWCleanup MDA

注意

本文專屬於 .NET Framework。 它不適用於較新的 .NET 實作,包括 .NET 6 和更新版本。

當使用 Marshal.ReleaseComObject 方法這類命令呼叫釋放執行階段可呼叫包裝函式 (RCW) 時,如果 Common Language Runtime (CLR) 偵測到 RCW 正在使用中,則會啟動 raceOnRCWCleanup Managed 偵錯助理 (MDA)。

徵兆

使用 ReleaseComObject 或類似方法釋放 RCW 期間或之後,發生存取違規或記憶體損毀的情況。

原因

另一個執行緒正在使用這個 RCW,或釋放執行緒堆疊時正在使用這個 RCW。 無法釋放使用中的 RCW。

解決方法

請勿釋放目前執行緒或其他執行緒可能正在使用的 RCW。

對執行階段的影響

此 MDA 對 CLR 沒有影響。

輸出

描述錯誤的訊息。

組態

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

另請參閱