|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Andrey Sapozhnikov 2:5020/400 17 Jul 2002 13:02:50 To : Sergey Zhuravlev Subject : Re: memory leaks под mod_perl -------------------------------------------------------------------------------- Sergey Zhuravlev wrote: > Andrey Sapozhnikov <sapa@icb.chel.su> пишет: > > SZ> В чём может быть проблема? > AS> В том, что Вы не показали исходников. > Исходники слишком велики, чтобы публиковать их в эху, и > проблемный кусок кода из них вытащить сложно. > Меня интересует, по какой причине это может происходить > в принципе. Hапример - кольцевые ссылки. Конструкция: { my $a; my $b = \$a; $a = \$b; } теряет память. По выходу из блока интерпретатор не разрушит ни $a ни $b поскольку на них есть ссылки. Практически петли конечно сложнее. Более тривиальный вариант. Потеря памяти в глобальном массиве. Команда: push @main::aa, 1; будет пихать и пихать в этот массив, а глобальные переменные не разрушаются сами собой. Можно и еще придумать вариантов. > SZ> Как может вообще течь перловый скрипт при > SZ> использовании strict? > AS> Точно так же как и без него. > на perl.apache.org я нашёл только один пример > некоректного кода который течёт. Что то вроде: > $$global = 1; > ++$global; > при использовании strict этот код не прокатывает. Все вышенаписанное вполне совместимо со strict. Андрей --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/52846f671c3e.html, оценка из 5, голосов 10
|