建立 I/O 通道提交/完成佇列配對的新實例,並傳回用於參考 IORING 的控制碼。
語法
HRESULT CreateIoRing(
IORING_VERSION ioringVersion,
IORING_CREATE_FLAGS flags,
UINT32 submissionQueueSize,
UINT32 completionQueueSize,
HIORING *h
);
參數
ioringVersion
UNIT32 代表為其建立通道的 I/O 通道 API 版本。 此值必須小於或等於從呼叫 QueryIoRingCapabilities 擷取的值
flags
指定建立旗標的 IORING_CREATE_FLAGS 列舉中的值。
submissionQueueSize
要求的最小提交佇列大小。 系統可能會視需要四捨五入大小,以確保實際大小是 2 的冪。 您可以呼叫 GetIoRingInfo 來取得實際配置的佇列大小。 您可以呼叫 QueryIoRingCapabilities 來取得目前系統上的提交佇列大小上限。
completionQueueSize
要求的完成佇列大小下限。 系統會將此大小四捨五入為 2 的冪,該冪不少於實際提交佇列大小的兩倍,以允許在某些作業仍在進行時進行提交。 您可以呼叫 GetIoRingInfo 來取得實際配置的佇列大小。
h
如果建立成功,則接收產生的 HIORING 控制碼。 傳回的 HIORING 通道必須呼叫 CloseIoRing,而不是 CloseHandle,以釋放 IORING 的基礎資源。
返回值
HRESULT,包括但不限於下列項目:
| 價值觀 | Description |
|---|---|
| S_OK | 成功。 |
| IORING_E_UNKNOWN_VERSION | ioringVersion 中指定的版本未知。 |
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | Windows 內部版本 22000 |
| 支援的最低伺服器 | Windows 內部版本 22000 |
| Header | ioringapi.h |
| Library | 內核32。圖書館 |