C# 如何识别很短的时差?

C# 如何识别很短的时差?,c#,timer,C#,Timer,我正在开发测试人类反应时间的应用程序,我希望它能够计算一个人的反应和另一个人的反应之间的差异。我尝试使用计时器,但C#中的标准计时器不是很有效,也不是很准确,它们无法计算~1毫秒的差,甚至5毫秒的差也不够准确。有没有什么方法能让我准确地认识到两者的区别?我真的找不到什么东西,但我想我可以先做第一次反应,然后再做第二次反应,然后得到不同的时间,但我没有得到确切的时间,有没有办法,或者我应该用多媒体定时器来代替? (我正在寻找简单的解决方案。)您需要使用该类秒表将为您提供经过的毫秒、经过的时间跨度或

我正在开发测试人类反应时间的应用程序,我希望它能够计算一个人的反应和另一个人的反应之间的差异。我尝试使用计时器,但C#中的标准计时器不是很有效,也不是很准确,它们无法计算~1毫秒的差,甚至5毫秒的差也不够准确。有没有什么方法能让我准确地认识到两者的区别?我真的找不到什么东西,但我想我可以先做第一次反应,然后再做第二次反应,然后得到不同的时间,但我没有得到确切的时间,有没有办法,或者我应该用多媒体定时器来代替?
(我正在寻找简单的解决方案。)

您需要使用该类<代码>秒表将为您提供经过的毫秒、经过的时间跨度或经过的刻度(每个刻度代表100ns)。

+1,但:“
秒表
精确到100ns。”不一定是从:“…如果安装的硬件和操作系统支持高分辨率性能计数器,则Stopwatch类将使用该计数器测量经过的时间。否则,Stopwatch类使用系统计时器来测量经过的时间。使用频率和分辨率字段确定秒表计时实施的精度和分辨率。“精确到100纳秒,但可能没有那么精确。@T.J.Crowder感谢您的澄清。我去找了一个信号源,我记得实际上,滴答声是100纳秒,但准确度可能会有所不同。更新了。@T.J.克劳德:它声明精确到100ns。通过
frequency
property@DmitryBychenko:不,同样,精确到100纳秒。根据操作系统的不同,准确度可能比这差得多。文档对此很有说明,包括一个例子,展示了在给定情况下的实际准确度。@ChrisMantle感谢您的回答,1毫秒的准确度确实足够了,甚至2毫秒也可以。