Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
off 23.05.2008 18:51
Делая нетипичную для веба задачу, имитировал загрузку (вычислительную процедуру) следующим кодом:^for[j](1;200){ #^memory:compact[] ^for[i](1;10000){ ^rem{x empty z} } } ^eval($i*$j)Обнаружил, что процесс parser отъедает себе в этом случае 740326КБ памяти и зависает (наблюдаю в Диспетчере задач, нагрузка с процессора спадает).
$count[$i], то parser съест 595180КБ и зависнет. Цифры меняются в зависимости от кода внутри цикла.
^memory:compact[]ситуацию с одной стороны спасает (скорость потребления памяти уменьшается), с другой стороны усложняет (конечной цифры получить не мог. т.к. при моих физических 2ГБ parser смог съесть 1,5ГБ и продолжал кушать - пришлось убить).
^memory:compact[]во второй цикл снимает вопрос утечки памяти. Но странно что это происходит с пустым циклом.