小弟在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打完沒檢查