為了獲得1ms cycle time
目前使用兩個方式達成
第一個方式使用Thread搭配while迴圈
使用Stopwatc跟SpinWait、Thread.Sleep(1)搭配
另一個方式使用media timer(timeSetEvent)
兩個方式目前都可以得到1ms cycle time
但只要有新的執行緒建立
當下會影響目前已存在的timer
這個現象據我測試強制GC也會
但不同的電腦受到影響的程度不一
我目前使用Acer VN7就很容易受到影響
公司的工業電腦影響程度較低
但也還沒達到穩定程度
提高程式即時性也沒什麼用
還有什麼招可試嗎?
感謝
目前已參考網路文章標題如下
KB-測試Thread.Sleep的精確度
KB-Thread.Sleep, 別賴床!
Timer surprises, and how to avoid them
Priority-induced starvation: Why Sleep(1) is better than Sleep(0) and the
Windows balance set manager