ngx_pool_t *ngx_create_pool(size_t size, ngx_log_t *log){ngx_pool_t *p;
p = ngx_memalign(NGX_POOL_ALIGNMENT, size, log);if (p == NULL) { return NULL;
}
p->d.last = (u_char *) p + sizeof(ngx_pool_t);
p->d.end = (u_char *) p + size;
p->d.next = NULL;
p->d.failed = 0;
size = size - sizeof(ngx_pool_t);
p->max = (size < NGX_MAX_ALLOC_FROM_POOL) ? size : NGX_MAX_ALLOC_FROM_POOL;
p->current = p;
p->chain = NULL;
p->large = NULL;
p->cleanup = NULL;
p->log = log;return p;}如上,在 ngx_create_pool 中 使用到了 NGX_MAX_ALLOC_FROM_POOL, NGX_MAX_ALLOC_FROM_POOL 是 ngx_pagesize - 1但是看nginx代码, ngx_pagesize 在第一次穿件内存池的时候, 还没有被赋值。这是不是有问题?
添加回答
举报
0/150
提交
取消