“计时器”组件不够准确,有没有替代方案

本文关键字:计时器 有没有 方案 组件 不够 | 更新日期: 2023-09-27 18:34:10

我需要每 0.03125 秒发生一次事件Timer控制只能达到0.031秒

如何从Stopwatch组件创建更准确的事件?

“计时器”组件不够准确,有没有替代方案

我发现这个,它比标准计时器更准确、更可靠!我简直不敢相信。

http://www.codeproject.com/Articles/5501/The-Multimedia-Timer-for-the-NET-Framework

引用:Win32 多媒体定时服务提供最大程度的计时精度。它们允许您以比其他定时服务更高的分辨率计划计时事件。这在时序精度至关重要的多媒体应用中非常有用。例如,MIDI 应用程序需要尽可能细粒度的计时事件。

不幸的是,Win32多媒体计时器不是.NET Framework的一部分。但是,通过使用 .NET 互操作性服务,可以将多媒体计时器引入 .NET 折叠。

Windows 不是实时操作系统 - 因此您无法保证在特定时间后执行方法。

你能做的最好的事情就是忙于等待检查时间(可能使用秒表)。

您还可以使用分辨率更高的多媒体计时器...(搜索查询 - C# 多媒体计时器,即从 C# 中的计时器获取准确的时钟周期)

一般来说,计时器只能精确到大约 15 毫秒,即便如此,也往往存在准确性问题,因为它们通常会被抢占。

拥有精度在

四分之一毫秒范围内指定的计时器将需要实时操作系统,并且无论使用哪个计时器都可能无法正常工作。

"

我需要每 0.03125 秒发生一次事件"——为了可靠地达到这样的精度,请使用专用微控制器。

您无法在桌面操作系统上实现您似乎需要的东西。

带有 chek 秒表时间或更准确的计数器的高优先级线程和循环怎么样?

相关文章: