Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Zaqwr Гость
|
Добавлено: Чт Фев 20 2003 00:46 Заголовок сообщения: fcntl - perl |
|
|
вообщшем такая чихарда open(READTXTFILE,"$filehead$_[0]"); flock(READTXTF ILE, 2); @readtxtfile=; flock(READTXTFILE, ; close(READTXTFILE); правильно? или сначала нужно файл блокировать, а потом открывать, и тоже самое с закрыванием, тоесть, если flock(READTXTFILE, 2); open(READTXTFILE,"$filehead$_[0]"); readtxtfile=; clo se(READTXTFILE); flock(READTXTFILE, ; и запустить скрипт с ключём -w будет следующие flock() on unopened filehandle READTXTFILE at d:/ho flock() on closed filehandle READTXTFILE at d:/ho так как же правильно? |
|
Вернуться к началу |
|
![](templates/subSilver/images/spacer.gif) |
FFF Гость
|
Добавлено: Чт Фев 20 2003 13:29 Заголовок сообщения: Re: fcntl - perl |
|
|
но ведь дескриптор файла READTXTFILE становится осмысленным только после open . поэтому правилен 1ый вариант. |
|
Вернуться к началу |
|
![](templates/subSilver/images/spacer.gif) |
Zaqwr Гость
|
Добавлено: Пт Фев 21 2003 10:06 Заголовок сообщения: Re: fcntl - perl |
|
|
да, безспорно, а как же тогда с закрытием? и вообще что делается в первую очередь, открывается файл, или блокируется? если открывается, тогда проскальзывает мысль что открыть его смогут два процесса одновременно, а если блокирется, то как указать ЧТО_БЛОКИРОВАТЬ? |
|
Вернуться к началу |
|
![](templates/subSilver/images/spacer.gif) |
FFF Гость
|
Добавлено: Пт Фев 21 2003 17:35 Заголовок сообщения: Re: fcntl - perl |
|
|
По моему мнению, все зависит от режима открытия файла. Например, два процесса могут открыть один тот же файл только для чтения (read only). Но если файл захвачен уже одним процессом для чтения/записи, то другой процесс его может открыть только для чтения.
А если первый процес открыл
Проверил сейчас в WinNT4. |
|
Вернуться к началу |
|
![](templates/subSilver/images/spacer.gif) |
|