Re: nxg_pfree дает ошибку

Maxim Dounin mdounin на mdounin.ru
Пт Янв 22 14:44:22 MSK 2010


Hello!

On Fri, Jan 22, 2010 at 02:04:58PM +0300, Alexandre Kalendarev wrote:

> столкнулся с такой вот штукой:
> 
> buf = ngx_pcalloc( r->pool, someSize );
> ...
> if ( ngx_pfree( r->pool, buf) != NGX_OK ) {
>      ngx_log_error(... "can't free bufer");
> }
> 
> вроде как можно пул не освобождать, но все же правильнее его освободить.
> someSize - зависит от длинны поста + некая константа.
> 
> хотелось бы знать причину возникновения ошибки или я что-то делаю не так??.

Посмотрите код функции в src/core/ngx_palloc.c - сами всё поймёте.

Она умеет освобождать только большие блоки (отдельно 
аллоцированные), так что возврат NGX_DECLINED - вполне нормален.

Maxim Dounin



Подробная информация о списке рассылки nginx-ru