use strict; use warnings; use MCE::Child 1.864; use MCE::Channel; my $chnl = MCE::Channel->new( impl => 'Mutex' ); sub task { while ( my $work = $chnl->recv() ) { my $time = MCE::Util::_time(); printf "pid $$, time %12.06f\n", $time; } } MCE::Child->create(\&task) for 1..5; for ( 1..40 ) { MCE::Child->yield(1.0); $chnl->send("work $_"); } $chnl->end(); MCE::Child->wait_all();