c# timer控件计时不准?
private int t = 0;//计时
private void timer1_Tick(object sender, EventArgs e)
{
t++;
}
private void timer2_Tick(object sender, EventArgs e)
{
this.Text = t.ToString(); t = 0;
}
private void button1_Click(object sender, EventArgs e)
{
timer1.Interval = 1;
timer2.Interval = 1000;
timer1.Enabled = true;
timer2.Enabled = true;
}
按理说 this.Text应该为1000呀,可显示只有65,为何呀?
------解决方案--------------------windows不是实时系统,会有一定误差的。
------解决方案--------------------timer不保证定时一定能触发。
一个简单的道理就是,我们假设timer中的代码运行非常耗时,如果真的能做到,那么除非计算机是无限快的。