Forum Webscript.Ru
Программирование => Perl => Тема начата: от 01 Октября 2001, 16:44:54
-
Нужно заблокировать файл. Подходят ли следующие две функции:
sub setLock
{
open(F,">sem.sem");
flock(F,LOCK_EX);
}
sub relLock
{
flock(F,LOCK_UN);
close(F);
}
Или нет?
-
Подходят, я использую для блокирования:
flock(F,2);
А разблокируется файл автоматически после
close F;
-
Подходят если в начале скрипта стоит строка
use Fcntl ":flock";
Это чтобы Perl четко знал что такое LOCK_EX и какое значение эта переменная имеет для данной ОС.
-
С Perl5 использование
use Fcntl ":flock";
для этого уже необязательно
-
Блокировка всегда будет выключатся автоматически после закрытия файла
close (F);