Слушай, честно, если таких переменных много - разработчику нужно руки отрывать к х*рам. Потому что он вообще не понимает, что такое параллельная обработка
Ладно, это все треп... Тредового Перла не существует, так как он тупо медленней именно из-за тредов (один и тот-же НЕ тредовый код на тредовом Перле будет на четверть медленней что-ли, просто потому что перл тредовый)
Я в 99% случаев использую потоки для 2-х стратегий: divide-at-impera и queued-jobs-processing Обе они предполагают автономность тредов друг от друга и сборку результатов в очередь.