다음을 통해 공유


raceOnRCWCleanup MDA

참고 항목

이 문서는 .NET Framework와 관련이 있습니다. .NET 6 이상 버전을 포함하여 .NET의 최신 구현에는 적용되지 않습니다.

raceOnRCWCleanup MDA(관리 디버깅 도우미)는 CLR(공용 언어 런타임)에서 Marshal.ReleaseComObject 메서드와 같은 명령을 사용하여 해제 호출을 수행할 때 RCW( 런타임 호출 가능 래퍼)가 사용 중임을 발견할 경우 활성화됩니다.

증상

ReleaseComObject 또는 이와 비슷한 메서드를 사용하여 RCW를 해제하는 중이나 그 이후에 액세스 위반 또는 메모리 손상이 발생합니다.

원인

RCW가 다른 스레드나 해제 스레드 스택에서 사용 중입니다. 사용 중인 RCW는 해제할 수 없습니다.

해결

현재 스레드나 다른 스레드에서 사용 중일 수 있는 RCW는 해제하지 마세요.

런타임에 대한 영향

이 MDA는 CLR에 아무런 영향을 미치지 않습니다.

출력

오류를 설명하는 메시지입니다.

구성

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

참고 항목