in reply to Perl should start to specify which functions and modules are thread-safe

I'm just starting to learn about threads myself, but have you looked at the Threads modules on cpan, it looks like Thread-Tie and Thread-Use seems to apply to your situation. It looks like Elizabeth Mattijsen is trying to work thru alot of these issues.

From the perlthrtut: If you're using a module that's not thread-safe for some reason, you can protect yourself by using it from one, and only one thread at all. If you need multiple threads to access such a module, you can use semaphores and lots of programming discipline to control access to it.

I guess the conventional wisdom, is if your app needs to keeps variable data separate, use a forked model. If your app needs to share variable data, use a threads model.

  • Comment on Re: Perl should start to specify which functions and modules are thread-safe