22.03.2010 12:46, Sergey Aleynikov пишет:
Hello,

22 марта 2010 г. 15:32 пользователь Kaltashkin Eugene
<[email protected]>  написал:
Вариант с lock файлом, который выставляется при запуске "первого" процесса 
хорош, но
иногда не срабатывает и два процесса всё равно загружают данные в хранилище
перетирая друг друга.
А вы как именно делаете это? Используете какой-то модуль, или
самописный лок? Если самописный - то возможны ошибки в реализации.
хм. всё как бы просто.

$lockfile = "/var/tmp/pradm_memcached_config_load.lock";
if(!-f $lockfile)
{
  print STDERR "$$ Creating lock file\n";
  open OUT,">$lockfile" or die "Cannot write to $lockfile $!";
  print OUT $$;
  close OUT;
  $lock = 1;
}
else
{
  undef $lock;
  print STDERR "$$ Lock file already exist\n";
}

--
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить