ICorDebugController::HasQueuedCallbacks 메서드

관리형 콜백이 지정된 스레드에 대해 현재 큐에 대기 중인지 여부를 나타내는 값을 가져옵니다.

구문

HRESULT HasQueuedCallbacks (  
    [in] ICorDebugThread *pThread,  
    [out] BOOL           *pbQueued  
);  

매개 변수

pThread
[in] 스레드를 나타내는 “ICorDebugThread” 개체에 대한 포인터입니다.

pbQueued
[out] 지정된 스레드에 대해 관리형 콜백이 현재 큐에 대기 중인 경우 값에 대한 포인터(즉, true)입니다. 그렇지 않으면 false입니다.

pThread 매개 변수에 대해 null을 지정하면 현재 관리형 콜백이 스레드에 대해 큐에 대기 중인 경우 HasQueuedCallbacks에서 true이(가) 반환됩니다.

설명

콜백은 ICorDebugController::Continue가 호출될 때마다 한 번에 하나씩 디스패치됩니다. 디버거는 동시에 발생하는 여러 디버깅 이벤트를 보고하려는 경우 이 플래그를 확인할 수 있습니다.

디버깅 이벤트가 큐에 대기 중인 경우 이미 발생했으므로 디버거는 디버기의 상태를 확인하기 위해 전체 큐를 드레이닝해야 합니다. (큐를 드레이닝하기 위해 ICorDebugController::Continue 호출). 예를 들어 큐의 스레드 X에 두 개의 디버깅 이벤트가 포함되어 있고 디버거가 첫 번째 디버깅 이벤트 후 스레드 X를 일시 중단한 다음, ICorDebugController::Continue을(를) 호출하는 경우 스레드가 일시 중단되었지만 스레드 X에 대한 두 번째 디버깅 이벤트가 디스패치됩니다.

요구 사항

플랫폼:시스템 요구 사항을 참조하세요.

헤더: CorDebug.idl, CorDebug.h

라이브러리: CorGuids.lib

.NET Framework 버전: 1.0부터 사용 가능

참고 항목