IMFAsyncCallback::GetParameters 方法 (mfobjects.h)

提供組態資訊給回呼的分派線程。

語法

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

參數

[out] pdwFlags

接收旗標,指出回呼物件的 IMFAsyncCallback::Invoke 方法的行為。 定義下列值。 預設值為零。

意義
Zero
回呼不需要很長的時間才能完成,但對於其所呼叫的系統呼叫沒有特定限制。 回呼通常需要不到 30 毫秒才能完成。
MFASYNC_FAST_IO_PROCESSING_CALLBACK
回呼會執行非常最少的處理。 完成所需的時間少於 1 毫秒。

必須從下列其中一個工作佇列叫用回呼:

  • MFASYNC_CALLBACK_QUEUE_IO
  • MFASYNC_CALLBACK_QUEUE_TIMER
MFASYNC_SIGNAL_CALLBACK
表示 MFASYNC_FAST_IO_PROCESSING_CALLBACK,回呼不會處理 (少於 50 毫秒) ,而且唯一進行的系統呼叫是 SetEvent

必須從下列其中一個工作佇列叫用回呼:

  • MFASYNC_CALLBACK_QUEUE_IO
  • MFASYNC_CALLBACK_QUEUE_TIMER
MFASYNC_BLOCKING_CALLBACK
封鎖回呼。
MFASYNC_REPLY_CALLBACK
回復回呼。

[out] pdwQueue

接收分派回呼所在工作佇列的標識碼。

此值可以指定其中一個標準 Media Foundation 工作佇列,或應用程式所建立的工作佇列。 如需標準 Media Foundation 工作佇列的清單,請參閱 工作佇列標識碼。 若要建立新的工作佇列,請呼叫 MFAllocateWorkQueue。 預設值為 MFASYNC_CALLBACK_QUEUE_STANDARD

如果工作佇列與 pdwFlags 中傳回的值不相容,Media Foundation 平臺會在嘗試分派回呼時傳回 MF_E_INVALID_WORKQUEUE 。 (請參閱 MFPutWorkItem.)

傳回值

方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。

傳回碼 Description
S_OK
此方法已成功。
E_NOTIMPL
未實作。 假設預設行為。

備註

GetParameters 方法會傳回回呼的相關信息,讓分派線程可以優化它用來叫用回呼的進程。

如果方法在 pdwFlags 參數中傳回零以外的值, 則 Invoke 方法必須符合此處所述的需求。 否則,回呼可能會延遲管線。

如果您想要這兩個參數的預設值,請 傳回E_NOTIMPL。 預設值會在此頁面上的參數描述中提供。

如果已安裝 Windows Media Format 11 SDK 可轉散發元件,此介面可在下列平臺上使用:

  • Windows XP with Service Pack 2 (SP2) 和更新版本。
  • 已安裝 Windows XP Media Center Edition 2005 KB900325 (Windows XP Media Center Edition 2005) 和 KB925766 (2006 年 10 月更新匯總) 的 Windows XP Media Center Edition 2005。

規格需求

需求
最低支援的用戶端 Windows Vista [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 mfobjects.h (包含 Mfidl.h)
程式庫 Mfuuid.lib

另請參閱

異步回呼方法

IMFAsyncCallback

工作佇列