MFPutWaitingWorkItem 함수(mfapi.h)
이벤트가 신호를 받을 때까지 기다리는 작업 항목을 큐에 대기합니다.
구문
HRESULT MFPutWaitingWorkItem(
[in] HANDLE hEvent,
[in] LONG Priority,
[in] IMFAsyncResult *pResult,
[out] MFWORKITEM_KEY *pKey
);
매개 변수
[in] hEvent
이벤트 개체에 대한 핸들입니다. 이벤트 개체를 만들려면 CreateEvent 또는 CreateEventEx를 호출합니다.
[in] Priority
작업 항목의 우선 순위입니다. 작업 항목은 우선 순위에 따라 수행됩니다.
[in] pResult
비동기 결과 개체의 IMFAsyncResult 인터페이스에 대한 포인터입니다. 결과 개체를 만들려면 MFCreateAsyncResult를 호출합니다.
[out] pKey
대기를 취소하는 데 사용할 수 있는 키를 받습니다. 대기를 취소하려면 MFCancelWorkItem을 호출하고 Key 매개 변수에 이 키를 전달합니다.
이 매개 변수는 NULL일 수 있습니다.
반환 값
이 함수가 성공하면 S_OK 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
이 함수를 사용하면 구성 요소가 현재 스레드를 차단하지 않고 이벤트를 대기할 수 있습니다.
함수는 지정된 작업 큐에 작업 항목을 배치합니다. 이 작업 항목은 hEvent 에 지정된 이벤트가 신호를 받을 때까지 기다립니다. 이벤트가 신호를 받으면 작업 항목은 콜백을 호출합니다. (콜백은 pResult에 지정된 결과 개체에 포함됩니다. 자세한 내용은 MFCreateAsyncResult)를 참조하세요.
작업 항목은 콜백의 IMFAsyncCallback::GetParameters 메서드에 의해 작업 큐에 디스패치됩니다. 작업 큐는 다음 중 한 가지일 수 있습니다.
- 기본 작업 큐(MFASYNC_CALLBACK_QUEUE_STANDARD)입니다.
- 플랫폼 다중 스레드 큐(MFASYNC_CALLBACK_QUEUE_MULTITHREADED)입니다.
- MFLockSharedWorkQueue 함수에서 반환된 다중 스레드 큐입니다.
- MFAllocateSerialWorkQueue 함수에서 만든 직렬 큐입니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | mfapi.h |
DLL | Mfplat.dll |