所以我有一个System.Timers.timer,只有几次才会被禁用。 “Timer.Elapsed”事件订阅了一个事件处理程序,该事件处理程序计算滴答并在一定量的滴答之后禁用计时器。请注意,我不会取消订阅活动。
在将事件订阅到同一事件处理程序几次后,我意识到滴答间隔要短得多?
当Timer.Elapsed事件连续订阅事件处理程序而不取消订阅时会发生什么?
答案 0 :(得分:1)
如果您订阅了多个活动。每当函数将在调用事件时执行。
发生这种情况是因为每个函数都在委托函数列表中单独复制它;您可以使用此
删除未订阅的活动timer.tick -= yourFunction();
答案 1 :(得分:0)
如果您多次订阅一个事件,例如10次,那么绑定到该事件的方法将被触发10次。