Глобальные переменные и fork

Обсуждение серверного программирования.

Модераторы: Duncon, Yurich

wells
Сообщения: 19
Зарегистрирован: 27 сен 2004, 12:31
Откуда: Москва

Решил слепить тоже самое через Thread'ы.
Получается следующее:

Код: Выделить всё

use strict;
use Thread qw(async yield);
my $var = 0;
sub child {
    {
        lock $var;
        if ($var == 0) {
            yield;
            $var++;
            print "var is $var\n";
        }
    }
}
my $t2 = new Thread \&child;
$t2->join;
print "var is $var\n";
Почему в конце $var всё равно принимает старое значение?
Ответить