Главная страница


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : Yaroslav Tchayckovsky                2:5076/13.12   05 May 2002  18:09:04
 To : Artem Chuprina
 Subject : Как правильно модифицировать файл?
 -------------------------------------------------------------------------------- 
 
 03 Май 02 12:29, you wrote to Sergey Gernichenko:
 
  SG>> сабж в скрипте? делаю так:
  SG>> open F,"+<blabla";
  SG>> flock (F,1);
  SG>> #чтение данных в память
  SG>> flock (F,2);
  SG>> #Запись в тот же файл, замещая всё
  SG>> close (F);
  SG>> Правильно ли это?
  AC> Hет. Очевидный deadlock при попадании в это место одного такого скрипта,
  AC> когда другой находится в первой половине.
 
 А как тогда правильно делать?
 У меня почти похожая проблема.
 Кусок кода делает следующее открывает файл room на чтение, считывает оттуда
 данные, выполняет некоторые преобразования над этими данными, потом
 перезаписывает этот же файл преобразованными данными.
 Меня волнует, что в момент преобразования данных, гипотетически существует
 вероятность записи данных в этот файл другим скриптом, получится что эти
 дописанные новые данные будут затерты при перезаписи файла.
                 open  (room, "$filesdir/$room_name.txt");
                 @topics=<room>;
 
                 @topics2 = grep(!/^$FORM{'id'}/, @topics);
 
                 $out_str=join($end_string, $FORM{'id'});
                 push (@topics2,$FORM{'id'});
 
                 open  (room_file, ">$filesdir/$room_name.txt");
 
                 print room_file @topics2;
                 print room_file $end_string;
                 close  (room);
                 close  (room_file);
 Yaroslav
 
 ---
  * Origin: silence (Winamp is not active ;-) (2:5076/13.12)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Как правильно модифицировать файл?   Sergey Gernichenko   29 Apr 2002 19:13:18 
 Re: Как правильно модифицировать файл?   Artem Chuprina   03 May 2002 12:29:28 
 Как правильно модифицировать файл?   Yaroslav Tchayckovsky   05 May 2002 18:09:04 
 Re: Как правильно модифицировать файл?   Artem Chuprina   06 May 2002 11:46:56 
 Как правильно модифицировать файл?   Yaroslav Tchayckovsky   07 May 2002 21:39:29 
 Re: Как правильно модифицировать файл?   Artem Chuprina   08 May 2002 11:05:49 
 Как правильно модифицировать файл?   Yaroslav Tchayckovsky   10 May 2002 15:37:12 
 Re: Как правильно модифицировать файл?   Alexey Pchelnikov   10 May 2002 23:30:13 
 Как правильно модифицировать файл?   Yaroslav Tchayckovsky   11 May 2002 10:16:13 
 Re: Как правильно модифицировать файл?   Alexey Pchelnikov   11 May 2002 15:40:42 
 Re: Как правильно модифицировать файл?   Artem Chuprina   13 May 2002 16:02:47 
 Re: Как правильно модифицировать файл?   Sergey Gernichenko   07 May 2002 23:18:58 
 Re: Как правильно модифицировать файл?   Artem Chuprina   08 May 2002 11:07:53 
 Re: Как правильно модифицировать файл?   Sergey Gernichenko   09 May 2002 03:54:20 
 Re: Как правильно модифицировать файл?   Artem Chuprina   13 May 2002 16:04:54 
 Как правильно модифицировать файл?   Yaroslav Tchayckovsky   12 May 2002 20:11:44 
 Re: Как правильно модифицировать файл?   Artem Chuprina   13 May 2002 16:04:58 
 Re: Как правильно модифицировать файл?   Sergey Gernichenko   13 May 2002 23:14:42 
 Re: Как правильно модифицир овать файл?   Andrey Sapozhnikov   16 May 2002 17:06:30 
Архивное /ru.cgi.perl/32853cd52339.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional