timer没执行完又开始下一次调用
timer代码没执行完又开始下一次调用
timer是定时器,在规定的时间间隔里执行某个方法,但是你方法需要执行时间超过了你定的时间间隔,他并不会继续执行,而是开始执行下一次timer,
比如说现在是12点,timer的方法运行需要5分钟的时间,timer设置的时间间隔为2分钟,到了12:02的时候,timer的方法还没运行完成,他不会接着运行,而是直接开始下一次timer,也就是说你的方法调用了第二遍。
解决方法
为了避免这个问题,很多猿在开始执行方法的时候禁用timer, 方法执行完了之后再启用它,这样就能解决这个问题。
private void timer1_Tick(object sender, EventArgs e)
{
timer.enable = false;
//你要执行的方法
timer.enable = true;
}