monash-merc/cvl-fabric-launcher — pull request #7 by l1ll1 (2013-12-03 03:20:19+00:00)
Title: Onetab

Sorry, this commit contains multiple changes that should have been made individually
1) checkVersionNumber occurs in its own thread in the background
2) The masterList.json is downloaded in its own thread
3) The site confits are downloaded in their own thread. If they are downloaded inside two seconds, the download is used. If not it will try for a chached version and continue the download in the background.

I'ved used a pattern of threads putting their result onto a queue and having another thread wait on getting the item off the queue. This allows flow control between the wx GUI thread and other threads without having to poll a bollean.