假设我有一个需要在 X 秒后引发的非重复事件,例如超时。直观地说,创建一个 System.Timers.Timer,将其间隔设置为 X*1000,将其刻度线连接到事件并启动它是有意义的。由于这是一个非重复事件,并且您只希望它在一次触发后才被触发,然后您必须在计时器计时结束后停止它。
然而,如果这确实是最好的方法,定时器本质上是重复的,这让我不信任。保存开始的时间会更好/更准确/更安全吗,将计时器设置为每秒(甚至毫秒)滴答,并在滴答时轮询系统时间并仅在必要时间过去后手动引发目标事件?
任何人都可以权衡哪种方法最好(也许我也没有想到另一种选择)。如果我需要等待的时间跨度以毫秒为单位,那么一种方法会变得比另一种更好吗?