C# 中是否有可用的 .NET Timer 可以确保事件之间没有“漂移”?也就是说,如果您将计时器设置为每 X 秒关闭一次,那么在运行数天后它不会漂移,即确保一天中 X 秒事件的接近数量与其应该保持同步?
如果没有,是否有一个众所周知的代码示例可以在 C# 中包装 Timer 函数来执行此操作?
最佳答案
很抱歉,只给您提供了quartz.net的链接,但这是一个完全合格的,经过企业测试,...库...您不需要重新发明轮子了:)
如果您担心开销,那么开销的定义是什么?是文件大小(二进制文件大约为0.5mb)还是逻辑上的开销。
对于逻辑部分来说很好:我认为实现他们的IJob
-interface可以很好地强制消费者使用更好的代码。我不是内联方法的好 friend (仅作为示例,因为您可能会在计时器经过时触发其指针)-类将为您提供更多的可能性,并再次强制执行更好的oop,域设计等。 。
但是:用quartz.net进行Console.WriteLine(...)
可能会过分... :)
关于C#计时器每X秒触发一次,但与实时保持同步(即无漂移),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3296784/