I'm making a C# app to monitor some stuff in SQL. I use a background worker to pick up SQL data then build some charts based on the data. Pretty basic. However there's one frustrating thing about this. Using Thread.Sleep in the worker completely locks up the UI. No loading gif, inputs don't register, nada. This is very odd behavior to me because from what I read about the background worker use cases, it should run on it's own thread, COMPLETELY separate from the UI. So what gives? What can I use in place of this? Here's my background worker code:I'm making a C# app to monitor some stuff in SQ