MFAllocateWorkQueueEx 함수(mfapi.h)

새 작업 큐를 만듭니다. 이 함수는 메시지 루프가 있는 작업 큐를 만들 수 있도록 하여 MFAllocateWorkQueue 함수의 기능을 확장합니다.

구문

HRESULT MFAllocateWorkQueueEx(
  [in]  MFASYNC_WORKQUEUE_TYPE WorkQueueType,
  [out] DWORD                  *pdwWorkQueue
);

매개 변수

[in] WorkQueueType

만들 작업 큐의 유형을 지정하는 MFASYNC_WORKQUEUE_TYPE 열거형의 멤버입니다.

의미
MF_MULTITHREADED_WORKQUEUE
다중 스레드 작업 큐를 만듭니다. 일반적으로 애플리케이션은 프라이빗 다중 스레드 큐를 만들지 않아야 합니다. 대신 플랫폼 다중 스레드 큐를 사용합니다. 자세한 내용은 작업 큐 및 스레딩 개선 사항을 참조하세요.
MF_STANDARD_WORKQUEUE
메시지 루프 없이 작업 큐를 만듭니다. 이 플래그를 사용하는 것은 MFAllocateWorkQueue를 호출하는 것과 같습니다.
MF_WINDOW_WORKQUEUE
메시지 루프를 사용하여 작업 큐를 만듭니다. 이 큐의 작업 항목을 디스패치하는 스레드는 PeekMessageDispatchMessage도 호출합니다. 콜백이 메시지 루프가 필요한 작업을 수행하는 경우 이 옵션을 사용합니다.

[out] pdwWorkQueue

생성된 작업 큐에 대한 식별자를 받습니다.

반환 값

함수는 HRESULT를 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다.

반환 코드 Description
S_OK
함수가 성공했습니다.
E_FAIL
애플리케이션이 최대 작업 큐 수를 초과했습니다.
E_INVALIDARG
인수가 잘못되었습니다.
MF_E_SHUTDOWN
애플리케이션이 MFStartup을 호출하지 않았거나 애플리케이션이 이미 MFShutdown을 호출했습니다.

설명

작업 큐 사용을 마쳤으면 MFUnlockWorkQueue를 호출합니다.

MFAllocateWorkQueue 함수는 WorkQueueType 매개 변수에 대해 MF_STANDARD_WORKQUEUE 값을 사용하여 MFAllocateWorkQueueEx를 호출하는 것과 같습니다.

이 함수는 Windows Vista용 플랫폼 업데이트 보충이 설치된 경우 Windows Vista에서 사용할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista용 Windows 7, Windows Vista 및 플랫폼 업데이트 보충 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 mfapi.h
라이브러리 Mfplat.lib
DLL Mfplat.dll

추가 정보

MFPutWorkItem

MFPutWorkItemEx

미디어 파운데이션 함수

작업 큐