Jan. 5th, 2011

nataraj: (Default)
Перловый скрипт с очень длинным циклом постепенно съедает доступную память... В памяти я вроде ничего не храню, все пишу в файлы. Все переменные пересоздаются заново в теле цикла. Даже файловые дискрипторы не храню, всякий раз открываю/закрываю... Тем ни менее память постепенно съедается и к утру наверное съестся вся... Что плохо для соседей...

Где она еще может естся? внутри глобальных переменных модулей? Попробовать занести внутрь цикла часть use'ов а в конце цикла сказать им "no"? Это поможет, если дело в этом?

Я конечно могу сохранить список в файл и пятьсот раз запустить этот скрипт с обработкой по сколько-то тысяч записей, это наверное спасет от утечки... Но как-то это как минимум не спортивно
nataraj: (Default)
Scalar::Util
       dualvar NUM, STRING
           Returns a scalar that has the value NUM in a numeric context and the value STRING in a string context.

               $foo = dualvar 10, "Hello";
               $num = $foo + 2;                    # 12
               $str = $foo . " world";             # Hello world


Господи! Это каких же глюков можно наловить!

PS: Там еще в конце забавно: The weaken and isweak subroutines in this module and the patch to the core Perl were written in connection with the APress book ‘Tuomas J. Lukka’s Definitive Guide to Object-Oriented Programming in Perl’, to avoid explaining why certain things would have to be done in cumbersome ways.

Profile

nataraj: (Default)
Swami Dhyan Nataraj

July 2024

S M T W T F S
 123456
789 10111213
14151617181920
21222324252627
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 15th, 2025 11:04 am
Powered by Dreamwidth Studios