http://www.perlmonks.org?node_id=859407


in reply to Re^6: Thread Design help
in thread Thread Design help

The combination of this line:

$request->enqueue( [$dbname,$dataEntity{$dbname}] );

And the very down-level version of threads you are using is almost certainly the source of your problem.

You might be able to fix it without upgrading by changing the code to be:

use threads::shared; ... for my $dbname (keys %dataEntity) { my @args :shared = ( $dbname,$dataEntity{$dbname} ); $request->enqueue( \@args ); };

But I would still suggest upgrading threads, threads::shared and Thread::Queue ASAP.


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.