Valter Douglas Lisbôa Jr. wrote: > The code bellow functions very nice. > > --------------------- > while(my ($id, $ep, $local, $tolerance, $lasterr, $hostscount) = > $sthLocals->fetchrow_array()) { > $self->localPolling($id, $ep, $local, $tolerance, $lasterr, $hostscount); > } > --------------------- > > But if I try to execute with a thread: > > --------------------- > while(my ($id, $ep, $local, $tolerance, $lasterr, $hostscount) = > $sthLocals->fetchrow_array()) { > my $thr = threads->create($self->localPooling, $id, $ep, $local, $tolerance, > $lasterr, $hostscount); > } > --------------------- > > It returns a error: > Can't locate object method "localPooling" via package "Poller::Check"!
Try while (my ($id, $ep, $local, $tolerance, $lasterr, $hostscount) = $sthLocals->fetchrow_array()) { my $thr = threads->create(sub { $self->localPooling($id, $ep, $local, $tolerance, $lasterr, $hostscount); }); }