Sign-up for my latest app's private beta at consolewriteline.com!

« I Wrote This With Live Writer | Main | Flickr Live Writer Plugin »

Multi-Thread Everything

It's screen captures like this that make Windows look terrible compared with OS X:

It seems odd that Visual Studio doesn't get "files from the Web..." on a separate background thread. I realise there's not much else I can do with the app while this is happening and so as a developer multi-threading doesn't immediately spring to mind, but by performing a potentially huge download on the main process thread I lose control of the app completely. What if I wanted to cancel?

By version 1.0 in CSSVista I'm going to have at least tried it out as a completely multi-threaded application. That is, every operation that may cause a delay, regardless of whether the user should be able to use the app during this process or not, will be on a separate thread, feeding back to the main thread when appropriate - maybe even a separate process if appropriate.

Even if the main thread is showing a modal dialog with nothing more than a loading indicator - this is better than 2 UI's merged together in a big, unresponsive mess.

Somewhere between Windows 3.1 and XP it seems to have become acceptable for larger applications to swing in and out of a "Not Responding" state without worry - "Oh, it just does that while it's loading - I'm opening a very big project after all".

Post a comment


Contact Me

If you'd like to get in touch, contact me on +447944 353544 or matt@mattbrindley.com

products

Litmus

Litmus makes compatibility testing easier for web pages and email newsletters.

ThinkFold

Online outlining, for groups. Collaborate in realtime with colleagues!

Delicious Presentation Creator

20 slides from your Delicious feed, 20 seconds each.

Flare

A site-specific browser for 37Signals' Campfire chat app, bring Campfire to your desktop.

CSSVista

Edit your CSS code live in both Internet Explorer and Firefox simultaneously.