猿问

实现“计时器”的最佳方法是什么?

实现“计时器”的最佳方法是什么?

实现计时器的最佳方法是什么?代码示例会很棒!对于这个问题,“最佳”被定义为最可靠(最少数次失火)和精确。如果我指定15秒的间隔,我希望每15秒调用一次目标方法,而不是每10到20秒调用一次。另一方面,我不需要纳秒精度。在这个例子中,该方法每14.51-15.49秒触发一次是可以接受的。



湖上湖
浏览 371回答 3
3回答

桃花长相依

目前尚不清楚您要开发的应用程序类型(桌面,Web,控制台......)一般的答案,如果你正在开发Windows.Forms应用程序,是使用System.Windows.Forms.Timer类。这样做的好处是它可以在UI线程上运行,所以只需定义它,订阅它的Tick事件并每15秒运行一次代码就很简单了。如果你做了其他的事情,那么windows表单(问题不清楚),你可以选择System.Timers.Timer,但是这个在其他线程上运行,所以如果你要对其Elapsed事件中的一些UI元素进行操作,你必须通过“调用”访问来管理它。
随时随地看视频慕课网APP
我要回答