다음을 통해 공유


raceOnRCWCleanup MDA

CLR(공용 언어 런타임)이 Marshal.ReleaseComObject 메서드와 같은 명령을 사용하여 RCW(RCW)를 해제하는 호출을 수행할 때 RCW가 사용되고 있음을 감지하면 raceOnRCWCleanup MDA(관리 디버깅 도우미)가 활성화됩니다.

증상

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

원인

다른 스레드나 해제 스레드 스택에서 RCW가 사용되고 있습니다. 사용되고 있는 RCW는 해제할 수 없습니다.

해결 방법

현재 스레드나 다른 스레드에서 사용되고 있을 수 있는 RCW는 해제하지 마십시오.

런타임 효과

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

Output

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

구성

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

참고 항목

참조

MarshalAsAttribute

개념

관리 디버깅 도우미를 사용하여 오류 진단

Interop 마샬링

기타 리소스

상호 운용성