Hey guys, I am currently trying to write an application that downloads a file and dynamically displays the progress in a Tk Widget. The program should be capable of downloading multiple files simultaneously. I considered a separate thread for each progress bar and sharing the progress bar's variable with the thread which updates the variable. Unfortunately I have discovered that Tk is not thread safe and that this approach causes issues. How can I accomplish this without using threads? For the record I am using the "content_cb" parameter of an LWP::UserAgent object and using the callback to calculate the progress.