Share via


Função MFAllocateWorkQueueEx (mfapi.h)

Cria uma nova fila de trabalho. Essa função estende os recursos da função MFAllocateWorkQueue tornando possível criar uma fila de trabalho que tenha um loop de mensagem.

Sintaxe

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

Parâmetros

[in] WorkQueueType

Um membro da enumeração MFASYNC_WORKQUEUE_TYPE , especificando o tipo de fila de trabalho a ser criada.

Valor Significado
MF_MULTITHREADED_WORKQUEUE
Crie uma fila de trabalho multithread. Em geral, os aplicativos não devem criar filas multithread privadas. Em vez disso, use as filas multithreaded da plataforma. Para obter mais informações, consulte Melhorias de fila de trabalho e threading.
MF_STANDARD_WORKQUEUE
Crie uma fila de trabalho sem um loop de mensagem. Usar esse sinalizador é equivalente a chamar MFAllocateWorkQueue.
MF_WINDOW_WORKQUEUE
Crie uma fila de trabalho com um loop de mensagem. O thread que envia os itens de trabalho para essa fila também chamará PeekMessage e DispatchMessage. Use essa opção se o retorno de chamada executar ações que exijam um loop de mensagem.

[out] pdwWorkQueue

Recebe um identificador para a fila de trabalho que foi criada.

Retornar valor

A função retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.

Código de retorno Descrição
S_OK
A função foi bem-sucedida.
E_FAIL
O aplicativo excedeu o número máximo de filas de trabalho.
E_INVALIDARG
Argumento inválido.
MF_E_SHUTDOWN
O aplicativo não chamou MFStartup ou o aplicativo já chamou MFShutdown.

Comentários

Quando terminar de usar a fila de trabalho, chame MFUnlockWorkQueue.

A função MFAllocateWorkQueue é equivalente a chamar MFAllocateWorkQueueEx com o valor MF_STANDARD_WORKQUEUE para o parâmetro WorkQueueType .

Essa função estará disponível no Windows Vista se o Suplemento de Atualização de Plataforma para Windows Vista estiver instalado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Suplemento Windows 7, Windows Vista e Platform Update para Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho mfapi.h
Biblioteca Mfplat.lib
DLL Mfplat.dll

Confira também

MFPutWorkItem

MFPutWorkItemEx

Funções do Media Foundation

Filas de Trabalho