Skip to main content

XUserUnregisterForChangeEvent

注销之前注册的用户更改回调。

语法

参数

token   _In_
类型:XTaskQueueRegistrationToken
XUserRegisterForChangeEvent 返回的令牌,用于标识要注销的回调。 wait   _In_
类型:bool
指示是否阻塞直到所有挂起的回调完成。

返回值

类型:bool 如果 wait 为 false 且注销挂起,则返回 false。否则返回 true。

备注

此函数不适合在时间敏感线程上调用。有关详细信息,请参阅时间敏感线程
注销通知: 注销会将令牌对应的回调从已注册回调集合中移除。
  • 如果没有正在为该回调令牌执行的回调,则调用返回 true。
  • 如果回调正在执行且 wait 为 true,则调用会阻塞,直到正在执行的回调完成。
  • 如果回调正在执行且 wait 为 false,则调用不会阻塞,而是返回 false。一旦该令牌的回调完成,令牌会自动注销。
此机制允许使用以下编码模式:
  1. 你可以在注销时阻塞,以确保你的回调在注销调用之后永远不会再被调用。
  2. 你可以选择不阻塞。如果你需要确保回调在删除数据之前完成,可以定期使用 wait 为 false 调用注销。当它最终返回 true 时,你的所有回调都已完成,你可以删除状态。
  3. 如果一个注销调用没有调用回调,你可以直接传入 false 作为 wait 参数并忽略返回值。
要注册用户更改回调,请调用 XUserRegisterForChangeEventXUserChangeEvent 枚举指定更改事件类型。 XUserChangeEventCallback 是用户更改事件的回调。 以下示例演示了如何处理用户更改事件。

要求

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

概念文档

另请参阅

XUser XUserRegisterForChangeEvent XUserChangeEvent XUserChangeEventCallback
最后修改于 2026年8月24日