Sometimes you just don't want the GUI to run in the main thread. Actually, I've migrated to using wxPython in its own thread for almost all of my projects. The advantages are obvious: you can make the entire GUI thing optional, your GUI never freezes, etc. I'm not going to describe how to achieve that, just google for "wxpython long running tasks". What I'm going to write about today is one of the downsides it brings and how to overcome this little complication.