小弟在Form里面建一个Threading.Timer
目的是依序把档案读进来做初步处理
timer跑的内容大致如下 :
ex假如我读了5个档案
private void TimerCallBack2(object obj)
{
if (!timer2Running)
{
Thread.Sleep(100);
}
else
{
...
读一个档FileList[fileCount],接着处理档案......
...
FileCount ++ ;
if (FileCount == 5)//当处理到5个档就把flag设fasle
{
timer2Running = false;
FileCount = 0;
}
}
}
但我发现每次都多读一倍的档案,也就是重复跑一次所有档案
我去观察内不运作发现就算timer2Running == False他还是跑进去读档
fileCount也确实被重设为0
第一次使用搞半天也搞不好,我的档案处理耗费时间较多,是这个的问题吗
有办法把这种timer停下来吗?
sorry打完没检查