我正在尝试创建一个以 100 Hz 记录加速度计数据的 Windows Phone 应用程序。我尝试了System.Windows.Threading.DispatcherTimer
和System.Threading.Timer
,但查看记录的数据,实际上都没有以 100 Hz 记录。DispatcherTimer
记录 60-80 Hz,而Timer
记录在 85-90 Hz 左右。我认为问题不在于手机无法处理它,因为当我尝试以 50 Hz 录制时,它仍然落后于仅 40+ Hz。这是我的代码片段:
对于DispatcherTimer
:
timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromMilliseconds(10);
timer.Tick += new EventHandler(timer_Tick);
对于Timer
:
timer = new Timer(timer_Tick, null, 0, 10);
如何确保以固定速率间隔录制?