gpt4 book ai didi

.net - Windows 毫秒计时 - 没有 busywait?

转载 作者:行者123 更新时间:2023-11-30 15:49:58 24 4
gpt4 key购买 nike

我正在编写一个应用程序,将输入从一个设备转换为另一个设备 - 比如说一种头部跟踪格式到另一种格式,主要用于为游戏中多种类型的头部跟踪提供支持。

大多数情况下,程序的输入是通过轮询共享内存来传递的。然而,在紧密循环中这样做会不必要地消耗 CPU 核心。应用程序必须不会降低游戏体验。

Windows 上的默认计划时间似乎是 60 Hz,因此 sleep 时间几乎没有。我需要少于 5 毫秒,但偶尔出现一点点也没关系。

我不想通过影响系统范围的计时器来影响系统配置。

我可以选择哪些选项来防止消耗核心,但仍然主要使用 C 或 .net 每 1-5 毫秒左右执行一次某个方法?

我正在寻找适用于 Windows 7 的解决方案。

最佳答案

看起来你只有两个选择:

  1. 使用Multimedia Timers ,但你似乎不喜欢这个主意。
  2. 在所有长循环中添加函数调用,检查 TSCPerformance Counter如果时间合适,就执行任何需要执行的事情。

关于.net - Windows 毫秒计时 - 没有 busywait?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16011663/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com