Is this for having a second MainLoop? (another seperate Tk thingy) If so, nice! Since the only thing they share is the one scalar from $thread_queue (which is just the path to where the file is). Rest is created in the thread and shown. No need to return anything if the thread can do it all!