трабл perl

Discussion in 'PHP' started by genom--, 1 Mar 2007.

  1. genom--

    genom-- Elder - Старейшина

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    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 это строка с созданием потока -- подозреваю что наверное массив @_ существует только один хоть и идет как константа поэтому типо нельзя их в потоках юзать а нужно

    что посоветуете
     
  2. valiko

    valiko Elder - Старейшина

    Joined:
    28 Jan 2007
    Messages:
    152
    Likes Received:
    144
    Reputations:
    19
    Может так?
    Code:
    threads->create(\&puk,@qq);
     
    1 person likes this.
  3. genom--

    genom-- Elder - Старейшина

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    угу пашет

    спасибо

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