elsif ($msg =~ /^open\s(.*)$/) { my $thrid = threads->create("serial_logger", $n_workers, $mgr_fh); push(@worker_id, $thrid); $worker_req_q[$n_workers]->enqueue($msg); my $ret = $worker_ack_q[$n_workers]->dequeue; $mgr_ack_q->enqueue($ret); ++$n_workers; } elsif ($msg eq "run") { $mgr_state = "running"; broadcast_to_workers("run"); }