sub thread_sub { while ($test == 0) { if (certain test is true) { $test = 1; #maybe test should be shared return; } } # Now here is where I am getting really god damned lost {my $action = $queue->enqueue;} }