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


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/371.32  31 Jan 2001  13:37:41
 To : Zfido88
 Subject : Re: буферизация входного потока
 -------------------------------------------------------------------------------- 
 
 В твоём письме от Wed, 31 Jan 2001 00:12:04 +0300 написано:
 
 zzr> Диспозиция:
 
 while(<STDIN>>){
 
 zzr>     #do useful thing with each input string
 zzr> }
 
 zzr> Проблема:
 zzr> Если в STDIN засунуть огромнейшую строку, в которой нет \n , можно забить
 zzr> всю виртуальную память!!!! Т.е. обработки строки не начнется до тех пор,
 zzr> пока не примется вся строка.
 zzr> А вся строка не примется никогда, т.к. она будет приниматься и
 zzr> приниматься....(она гигантская).... И ... "привет память" ...
 
 zzr> Вопрос: Как сделать так, чтобы ограничить длину строки.
 zzr> Т.е. если лимит превышен - не принимать больше, а сообщить об ошибке
 zzr> что-ли...
 
 zzr> Для чего это нужно:
 zzr> Для http демона , например.
 zzr> Если к такому демону подключится и дать на вход:
 zzr> GET  i_poshla_voda_zdes'_do_beskonechnosti...
 zzr> То демон будет послушно жрать все, что ему, тупому на вход подадут.
 zzr> А так, как конца строки не будет.... рано или поздно кончится память....
 
 Более "честный" вариант ответа, чем уже дали: perldoc -f read.
 
 -- 
 Artem Chuprina                            E-mail: ran@ran.pp.ru
 Programmer                                  FIDO: 2:5020/371.32
 Memonet Ltd.                             Phone: +7-095-284-1356
 --- slrn/0.9.6.3-as (Linux)
  * Origin: AKA с подствольным плюсомётом (2:5020/371.32)
 
 

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

 Тема:    Автор:    Дата:  
 Re: буферизация входного потока   Artem Chuprina   31 Jan 2001 13:37:41 
Архивное /ru.perl/71613bb035c51.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional