创建 I/O 环提交/完成队列对的新实例,并返回引用 IORING 的句柄。
Syntax
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
请求的完成队列的最小大小。 系统将此大小向上舍入为两个,该大小不超过实际提交队列大小的两倍,以允许提交,而某些作仍在进行中。 可以通过调用 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 | kernel32。自由 |