作者goodguychung (泡面终结者)
看板C_Sharp
标题[问题] 偶发Timer不会执行
时间Mon Oct 22 20:42:41 2018
请教各位前辈。
小弟使用c#的System.Windows.Forms.Timer,
在执行绪内呼叫timer,欲进行即刻的启动时,
偶发会出现无法start的情形(机率极低)。
这个现象只有在一台中电脑会发生。
大多数的电脑上运行却又从未出现过。
小弟的写法如下,是否用法有误?
void Thread()
{
While(true)
{
...
//当达成某些事件时即刻启动timer
this.BeginInvoke(new EventHandler(delegate
{
this.recognitionTimer.Stop();
this.recognitionTimer.Interval = 1;
recognitionTimer.Start();
}));
}
...
}
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 122.117.80.102
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1540212164.A.FC1.html
1F:推 jass970991: .net有三个timer 好像有一个是用法上要注意的 忘了哪 10/23 09:33
2F:→ jass970991: 个 10/23 09:33
3F:推 Litfal: 他这个应该是最不需要注意的 虽然不知道他为什麽要这样写 10/23 17:46
4F:→ Litfal: 说明一下使用情境吧 你这样如果没有在Timer事件里把Timer 10/23 17:48
5F:→ Litfal: 关掉,Timer应该会几乎把UI执行续卡死...但如果只跑一次 10/23 17:49
6F:→ Litfal: 又不需要用Timer 10/23 17:49
7F:推 jamyang: 可以检查是否偶发没有触发这个事件 10/24 07:05
8F:推 gundan: log写多一点阿 … 查问题的时候就好用了 11/02 14:48