Compartilhar via


Método IMFAsyncCallback::GetParameters (mfobjects.h)

Fornece informações de configuração para o thread de expedição para um retorno de chamada.

Sintaxe

HRESULT GetParameters(
  [out] DWORD *pdwFlags,
  [out] DWORD *pdwQueue
);

Parâmetros

[out] pdwFlags

Recebe um sinalizador que indica o comportamento do método IMFAsyncCallback::Invoke do objeto de retorno de chamada. Os valores a seguir são definidos. O valor padrão é zero.

Value Meaning
Zero
O retorno de chamada não leva muito tempo para ser concluído, mas não tem restrições específicas sobre quais chamadas do sistema ele faz. O retorno de chamada geralmente leva menos de 30 milissegundos para ser concluído.
MFASYNC_FAST_IO_PROCESSING_CALLBACK
O retorno de chamada faz um processamento muito mínimo. Leva menos de 1 milissegundos para ser concluído.

O retorno de chamada deve ser invocado de uma das seguintes filas de trabalho:

  • MFASYNC_CALLBACK_QUEUE_IO
  • MFASYNC_CALLBACK_QUEUE_TIMER
MFASYNC_SIGNAL_CALLBACK
Implica MFASYNC_FAST_IO_PROCESSING_CALLBACK, com a restrição adicional de que o retorno de chamada não processa (menos de 50 microssegundos) e a única chamada do sistema que ele faz é SetEvent.

O retorno de chamada deve ser invocado de uma das seguintes filas de trabalho:

  • MFASYNC_CALLBACK_QUEUE_IO
  • MFASYNC_CALLBACK_QUEUE_TIMER
MFASYNC_BLOCKING_CALLBACK
Bloquear o retorno de chamada.
MFASYNC_REPLY_CALLBACK
Responder retorno de chamada.

[out] pdwQueue

Recebe o identificador da fila de trabalho na qual o retorno de chamada é expedido.

Esse valor pode especificar uma das filas de trabalho padrão do Media Foundation ou uma fila de trabalho criada pelo aplicativo. Para obter uma lista de filas de trabalho padrão do Media Foundation, consulte Identificadores de Fila de Trabalho. Para criar uma nova fila de trabalho, chame MFAllocateWorkQueue. O valor padrão é MFASYNC_CALLBACK_QUEUE_STANDARD.

Se a fila de trabalho não for compatível com o valor retornado em pdwFlags, a plataforma do Media Foundation retornará MF_E_INVALID_WORKQUEUE quando tentar expedir o retorno de chamada. (Consulte MFPutWorkItem.)

Valor de retorno

O método retorna um HRESULT. Os valores possíveis incluem, mas não se limitam a, aqueles na tabela a seguir.

Código de retorno Description
S_OK
O método foi bem-sucedido.
E_NOTIMPL
Não implementado. Suponha o comportamento padrão.

Observações

O método GetParameters retorna informações sobre o retorno de chamada para que o thread de expedição possa otimizar o processo que ele usa para invocar o retorno de chamada.

Se o método retornar um valor diferente de zero no parâmetro pdwFlags , seu método Invoke deverá atender aos requisitos descritos aqui. Caso contrário, o retorno de chamada poderá atrasar o pipeline.

Se você quiser valores padrão para ambos os parâmetros, retorne E_NOTIMPL. Os valores padrão são fornecidos nas descrições de parâmetro nesta página.

Essa interface estará disponível nas seguintes plataformas se os componentes redistribuíveis do SDK do Windows Media Format 11 estiverem instalados:

  • Windows XP com Service Pack 2 (SP2) e posterior.
  • Windows XP Media Center Edition 2005 com KB900325 (Windows XP Media Center Edition 2005) e KB925766 (pacote cumulativo de atualizações de outubro de 2006 para Windows XP Media Center Edition) instalados.

Requirements

Requirement Value
Cliente mínimo suportado Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo compatível Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
da Plataforma de Destino Windows
Header mfobjects.h (inclua Mfidl.h)
Library Mfuuid.lib

Consulte também

Métodos de retorno de chamada assíncronos

IMFAsyncCallback

Filas de trabalho