如果我使用自己的“图像生成器”计算每秒约20帧的图像,CPU占用率会上升到20%,但是定时器永远不会触发事件。GUI中的图像显示20FPS。如果我停止图像生成器,则定时器立即触发它的事件。
我不知道从哪里开始搜索。
Me.TimerCalc = New System.Windows.Threading.DispatcherTimer
Me.TimerCalc.Interval = TimeSpan.FromMilliseconds(1000)
Me.TimerCalc.Start
Private Sub TimerCalc_Tick(sender As Object, e As System.EventArgs) Handles TimerCalc.Tick
'Does not fire if other process is running by using more CPU
End Sub
如果我将帧速率降低到约10FPS,有时DispatcherTimer会触发其事件,有时不会。如果我增加帧速率,DispatcherTimer将会触发更少的事件。
编辑:在此处下载演示项目:VisualStudio 2010 Dispatcher Test with Windows Form Timer 编辑:演示视频已上传至此处:视频中立方体不再旋转