1 #!/usr/bin/perl
2
3 use Thread 'yield';
4
5 #my $var : shared = 1;
6
7 sub myFunc {
8 my($link) = @_;
9
10 while($$link) { yield; }
11 }
12
13 $var = 1;
14 $t = Thread->new(\&myFunc, \$var);
15 $var = 0;
16
17 $t->join();
myFunc() вернёт, только если раскоментировать 5 строчку. Сильно не бить: с потоками в Perl работаю впервые, а в кемеле (3-е издание, для perl 5.6) почему-то про shared вобще ничего не пишут.