Skip to main content

XTaskQueueRegisterWaiter

向任务队列注册等待句柄。

Syntax

Parameters

queue   _In_
类型:XTaskQueueHandle
要向其提交回调的队列。 port   _In_
类型:XTaskQueuePort
要向其提交回调的端口。可以将回调分配给工作端口或完成端口。 waitHandle   _In_
类型:HANDLE
要监视的句柄。
这是等待句柄,收到信号时将导致调用回调。等待句柄通常是自动或手动重置事件。如果等待句柄是手动重置的,则只要该事件发出信号,就会重复调用回调。如果这不是你想要的,请在回调期间重置该事件,或者取消注册等待回调。
callbackContext   _In_opt_
类型:void*
将传递给回调的可选上下文指针。 callback   _In_
类型:XTaskQueueCallback*
指向回调函数的指针。 token   _Out_
类型:XTaskQueueRegistrationToken*
注册令牌。可以将其传递给 XTaskQueueUnregisterWaiter 以取消注册等待。

Return value

类型:HRESULT HRESULT 成功或错误代码。

Remarks

此函数在时间敏感线程上调用不安全。有关详细信息,请参阅时间敏感线程
当等待句柄得到满足时,任务队列将调用给定的回调。这提供了一种响应句柄变为已发出信号状态而向任务队列添加项目的高效方法。 以下示例向任务队列注册一个 Win32 内核句柄。当该句柄变为已发出信号时,将向该队列提交回调。通常,你会创建一个自动重置事件用于发信号。如果句柄不是自动重置的,则只要句柄发出信号,当前回调完成时就会提交新的回调。

Requirements

头文件: XTaskQueue.h 库: xgameruntime.lib 受支持的平台: Windows、XBOX One 系列主机和 XBOX Series 主机

Conceptual documentation

See also

XTaskQueue 成员
异步编程模型
异步任务队列设计
最后修改于 2026年8月24日