|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Andrei V. Lisyansky 2:4614/9.26 13 Jan 2001 19:20:35 To : Artem Chuprina Subject : flock -------------------------------------------------------------------------------- ю 16 May 2000 (18:07) ю Artem Chuprina > Denis Wnuckoff wrote: DW>> Почемy ActivePerl for Win32 не понимает сабжевyю командy? AC> Потому что операционная система MS-DOS и графические надстройки над AC> ней не поддерживают такие локи. В NT понимает. Я конечно извиняюсь за запоздалую реакцию на данное письмо, но не проще ли обойти flock() следующей конструкцией?: while (-e "lockfile") {sleep(1);} #Вдруг кто-то уже работает с файлом, ждём! open LOCK, ">lockfile"; close LOCK; #Дождались, создаём свой. open (FILE, ">file.ext") || &filedie; #Работаем с файлом print FILE "test"; close FILE; unlink ("lockfile"); #Удаляем залочку sub filedie { unlink("lockfile"); die "Source file was not found"; } Ы? Разве что использовать время меньше секунды, но это уже второе предложение. И, вдобавок, не дай боже, файла не будет на месте, залочка сотрётся и всё будет ок. --- * Origin: Общество "ПАМЯТЬ" SIMM'ами не торгует! (2:4614/9.26) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/28193a608061.html, оценка из 5, голосов 10
|