Keeping the GUI responsive

Passing data from worker threads to the UI thread is always a chore no matter which programming language is used.  Code can be a bear to develop, complex to read, and difficult to maintain.  Race conditions, debugging, security access, etc – it’s all a...