I found this. http://stackoverflow.com/questions/3886171/why-thread-sleep-is-so-cpu-intensive and this https://social.msdn.microsoft.com/F...78/sleep-loop-causes-high-cpu?forum=vbgeneral Oh, and I don't know if you saw this http://blogs.msmvps.com/peterritchie/2007/04/26/thread-sleep-is-a-sign-of-a-poorly-designed-program/ And this http://www.codeproject.com/Questions/175229/Threading-and-CPU-usage I don't use VB or C#, but I have done threaded programming with Delphi. It's tricky. Usually, the UI is controlled in the main thread, and the worker thread gives the main thread a slice of time, to update the UI. (i.e. respond to "cancel" button or move a progress bar) Hope this helps a little... :MJ
Would be easier to give an answer if you gave what it is your updating.. I would maybe use an invoke new delegate or even SynchronizationContext