Memory leak в самописном коде

Igor Sysoev is at rambler-co.ru
Sun Jan 8 18:59:58 MSK 2006


On Sun, 8 Jan 2006, Alexey N. Kovyrin wrote:

> Igor Sysoev пишет:
>> ngx_pfree() вызывать не нужно, так как он умеет освобождать только
>> большие куски памяти. По окончании запроса вся память, выделенная из 
>> r->pool,
>> освобождается. А ngx_pfree() используется, например, в gzip-фильтре
>> по окончании сжатия для освобождения буферов, выделенных для zlib.
>> Это около 100-300К, и их можно освободить, чтобы не занимать эту память
>> во время передачи ответа клиенту.
>> 
>> А memory leak скорее всего в generate_top_banner() - там нужно
>> всю память выделять через ngx_palloc(r->pool, ...).
> Проблемка вся в том, что утечка была и в случае двух статичных баннеров... то 
> есть когда в верхнем буфере тоже было memory = 1 и не было temporary = 1.
> Как бы проверить, куда оно память девает....

Есть ли в коде вызвовы malloc()/calloc() или ngx_alloc()/ngx_calloc() ?


Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list