The current comments in perldoc threads (describing version 2.15) are certainly enough to give me pause:
The “interpreter-based threads” provided by Perl are not the fast, lightweight system for multitasking that one might expect or hope for. Threads are implemented in a way that make them easy to misuse. Few people know how to use them correctly or will be able to provide help. The use of interpreter-based threads in perl is officially discouraged.
(I copied the same perlpolicy
hyperlink for “discouraged” that was used in that perldoc.)
Since this is a “10 year old” program, what version of Perl was it written for, and what version is it running on now? I would be interested to know from other Monks – who will know what I do not – should (can?) this program be continued as-is using the now 10-year old strategies that it represents, or is it a dead end? And, if so, what threading technique should now replace it?