【发布时间】:2012-07-31 00:26:48
【问题描述】:
我在 Windows 中使用高清鼠标 (logitech g500),我希望获得原始鼠标事件的低延迟时间戳。我使用时间戳来计算鼠标移动之间的“暂停”,所以重要的是时间戳的相对精度。
我正在使用 RAW INPUT API 来监控鼠标事件。消息中不包含计时信息,因此我在 Windows 中使用了秒表。触发事件处理程序时获取“时间戳”的诊断 - 即鼠标事件处理程序中的第一个操作是读取秒表以了解已流逝的滴答声。
由于在这种情况下我没有任何基本事实可以处理,是否有人认为这种方法存在直接和明显的缺陷?或者更好的是,如果您在任何 cmets 之前使用过 Stopwatch 来研究延迟及其在秒表的不同读取中的可变性?
【问题讨论】:
-
只有真正衡量 UI 线程对 WM_INPUT 消息的响应程度,您将面临严重风险。这与您的线程在重新进入消息循环之前所做的事情相关。而且变化很大。
标签: c# windows mouseevent stopwatch raw-input