use Gearman::Client; my $client = Gearman::Client->new; $client->job_servers('127.0.0.1:7003'); my $taskset = $client->new_task_set; $taskset->add_task('fun' => undef ,{ uniq => 1, on_complete => sub{print ${$_[0]}}, timeout => 2, } ); $taskset->wait;