createUmsCompletionList 函式 (winbase.h)
建立使用者模式排程 (UMS) 完成清單。
警告
自 Windows 11 起,不支援使用者模式排程。 所有呼叫都會失敗,並出現錯誤 ERROR_NOT_SUPPORTED
。
語法
BOOL CreateUmsCompletionList(
[out] PUMS_COMPLETION_LIST *UmsCompletionList
);
參數
[out] UmsCompletionList
PUMS_COMPLETION_LIST變數。 在輸出時,此參數會收到空白 UMS 完成清單的指標。
傳回值
如果函式成功,則會傳回非零值。
如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。 可能的錯誤值包括下列專案。
傳回碼 | 描述 |
---|---|
|
記憶體不足,無法建立完成清單。 |
|
不支援 UMS。 |
備註
呼叫 EnterUmsSchedulingMode 函式以建立排程器執行緒時,完成清單會與 UMS 排程器執行緒相關聯。 系統會將新建立的 UMS 背景工作執行緒排入完成清單。 當執行緒不再遭到封鎖時,它也會將先前封鎖的 UMS 背景工作執行緒排入完成清單。
呼叫應用程式的 UmsSchedulerProc 進入點函式時,應用程式的排程器應該呼叫 DequeueUmsCompletionListItems,從完成清單中擷取專案。
每個完成清單都有相關聯的完成清單事件,每當系統將專案排入空白清單時,就會發出訊號。 使用 GetUmsCompletionListEvent 取得指定完成清單之事件的控制碼。
不再需要完成清單時,請使用 DeleteUmsCompletionList 來釋放清單。 清單必須空白,才能釋出列表。
規格需求
最低支援的用戶端 | 僅限 Windows 7 (64 位) [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | winbase.h (包含 Windows.h) |
程式庫 | Kernel32.lib |
DLL | Kernel32.dll |
API 集合 | api-ms-win-core-ums-l1-1-0 (在 Windows 7) |