[VB.NET] Use SpinWait.SpinUntil instead of Thread.Sleep

  • 521
  • 0
  • 2022-02-14

使用SpinWait.SpinUntil的效果與Thread.Sleep類似,但可以降低CPU使用率。

Thread.Sleep(1000)

Thread開始Sleep後,CPU在該Thread持續執行,並檢查時間是否到達:Thread持續使用CPU資源。

 

SpinWait.SpinUntil(Function() False, 1000)

開始自旋後,每1000ms檢查條件是否成立,Thread自旋時會釋放CPU資源。