火狐以某种方式与我的计时器交互?这太疯狂了^^
Firefox interacts with my timers somehow ?!?! This is crazy ^^
我有一个问题与定时器在我的win32 c++ DirectX游戏(一个小演示)。我使用"timeGetTime"来获取当前时间,并使用它来播放动画或通过使用增量时间进行逻辑(我还在动画时使用常量进行规范化)。我有时使用低至2毫秒的滴答率。在处理时间时,我只使用ulong。游戏运行得很好,但如果我启动Mozilla Firefox并启动游戏,那么游戏的速度就会非常快(动画和游戏逻辑)。就像快进一样。奇怪的是,似乎有几个计时器不受此影响。有人知道吗?Firefox和我的定时器之间有什么联系?退出后,Firefox会保持不变,但过了一段不确定的时间或重启电脑后,它会恢复正常。任何建议都是感激的,即使这是一个很长的机会。谢谢你。
是TimeGetTIme的默认精度为5ms或更大
这可以通过调用timeBeginPeriod和timeEndPeriod函数来改变。更改TimeGetTime的精度会影响所有正在运行的应用程序。我猜火狐正在调用那些影响你应用程序的函数。
改为使用QueryPerformanceCounter/queryperformancfrequency方法,而不是提供高分辨率定时,并且不会受到TimeGetTime问题的影响。
编辑:有几个链接向您展示如何使用这些函数。
http://www.programmersheaven.com/mb/windows/311148/311148/using-queryperformancecounter/还要注意MSDN页面上的注释:http://msdn.microsoft.com/en-us/library/ms644904 (v = vs.85) . aspx
相关文章:
- Qt VTK交互风格的信号到小部件
- Qt Quick-如何仅从c++代码与qml属性交互
- 在疯狂的部分中声明变量
- 复制和交换习惯用法与移动操作之间的交互
- 为什么在访问 vtkRenderWindow 的"交互器"变量时会发生段错误?
- Qt QGraphicsProxyWidget 与 QGraphicsScene 的交互
- 使用 Python 事件并与 C++ 交互
- 未来值公式显示疯狂巨大数字的输出
- 函数-本地枚举声明和 ADL 的交互
- 如何在扩展的QQuickItem中与模型交互
- 寻找C++中数组和cout交互的解决方案
- C++继承和"常量"交互的问题
- 以太坊与外部 c++ 库的交互稳定性
- 玩家移动和碰撞之间的交互问题
- C++ 和 Lua 函数之间的交互与 3D 矢量参数
- 内存分配究竟是如何发生的,Java和C如何交互以跟踪同一对象?
- 如何包装对象,使它们成为无法交互的单独类型?
- 通过交互器获取向量中的索引
- 如何在python中的PyArrow和C++中的Arrow之间进行交互时将PyArrow表转换为Arrow表
- 火狐以某种方式与我的计时器交互?这太疯狂了^^