आप इसमें से थ्रेड ::कतार या किसी अन्य का उपयोग कर सकते हैं:क्या पर्ल के लिए कोई मल्टीप्रोसेसिंग मॉड्यूल है?
यदि पुरानी प्रणाली पर्ल में इस तरह लिखी गई थी तो आप इसके अधिकांश भाग का पुन:उपयोग कर सकते हैं।
काम न करने वाला उदाहरण:
use strict;
use warnings;
use threads;
use Thread::Queue;
my $q = Thread::Queue->new(); # A new empty queue
# Worker thread
my @thrs = threads->create(sub {
while (my $item = $q->dequeue()) {
# Do work on $item
}
})->detach() for 1..10;#for 10 threads
my $dbh = ...
while (1){
#get items from db
my @items = get_items_from_db($dbh);
# Send work to the thread
$q->enqueue(@items);
print "Pending items: "$q->pending()."\n";
sleep 15;#check DB in every 15 secs
}