我一直在試圖追蹤一個我認爲是線程相關的bug,但是我認爲相反,我使用OpenNETCF的秒錶的方式存在問題。我在我的應用程序中使用OpenNETCF.IoC,但是爲了簡單起見,我把下面的代碼直接進入一個觀點:OpenNETCF.Stopwatch - >只有刻度發生變化,沒有經過
public partial class WorkoutView : SmartPart
{
...
private Stopwatch stopwatch;
public WorkoutView()
{ ...
stopwatch = new Stopwatch();
stopwatch.Reset();
stopwatch.Start();
WorkoutDisplayTimer = new Timer();
WorkoutDisplayTimer.Interval = 500;
WorkoutDisplayTimer.Tick += new EventHandler(WorkoutDisplayTimer_Tick);
WorkoutDisplayTimer.Enabled = true;
}
void WorkoutDisplayTimer_Tick(object sender, EventArgs e)
{ ...
stopwatch.Stop();
lbl.Text = stopwatch.ElapsedTicks.ToString() + "NOT WORKING: " + stopwatch.Elapsed.ToString();
stopwatch.Start();
}
...
}
長話短說,看在調試器秒錶,曾經得到更新的值只有ElapsedTicks,mElapsed,mStartPerfCount。其他一切總是零。這是預期的行爲?我是否需要調用其他方法讓秒錶計算Elapsed結構? (注:stopwatch.ElapsedMilliseconds也爲零)
感謝您的迴應!你有可能很快就會發布bug修復版嗎?我目前正在使用Community SDF,所以很遺憾我無法訪問源代碼來創建我自己的補丁。 – pithyless 2010-04-01 10:25:55