Thread::Queue::Any could be the solution, IF I had some bright idea to use it! I mean, the updateSearch would add to the queue, but how to set up a listener in the "Tk" part? This would need a thread, but then Im back to square one again... seems impossible!