PDA

Просмотр полной версии : трабл perl


genom--
01.03.2007, 23:05
use threads;

@qq=(1,2,33,44,555,666,7777,8888,9999,1010);
threads->create(\&puk(@qq));
sleep(4);

sub puk {
foreach my $pyss(@_){
if($dyndyk==55){goto(proskok);}
print"$pyss!!\n";
proskok:
$num--;
}
}

вот при выполнении все выполняется но отдельный поток не создается

пишет

C:\>11.pl
1!!
2!!
33!!
44!!
555!!
666!!
7777!!
8888!!
9999!!
1010!!
Thread failed to start: Not a CODE reference at C:\11.pl line 4.


4 это строка с созданием потока -- подозреваю что наверное массив @_ существует только один хоть и идет как константа поэтому типо нельзя их в потоках юзать а нужно

что посоветуете

valiko
01.03.2007, 23:27
Может так?
threads->create(\&puk,@qq);

genom--
02.03.2007, 00:20
угу пашет

спасибо

топ можете затереть нафиг =)