Mercurial > hg > nginx
comparison src/core/ngx_palloc.h @ 2049:2a92804f4109
*) back out r2040
*) refactor ngx_palloc()
*) introduce ngx_pnalloc()
*) additional pool blocks have smaller header
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 17 Jun 2008 15:00:30 +0000 |
parents | 4d8140271204 |
children | 25add486e7aa |
comparison
equal
deleted
inserted
replaced
2048:824615f3b4ec | 2049:2a92804f4109 |
---|---|
41 ngx_pool_large_t *next; | 41 ngx_pool_large_t *next; |
42 void *alloc; | 42 void *alloc; |
43 }; | 43 }; |
44 | 44 |
45 | 45 |
46 struct ngx_pool_s { | 46 typedef struct { |
47 u_char *last; | 47 u_char *last; |
48 u_char *end; | 48 u_char *end; |
49 ngx_pool_t *next; | |
50 } ngx_pool_data_t; | |
51 | |
52 | |
53 struct ngx_pool_s { | |
54 ngx_pool_data_t d; | |
55 size_t max; | |
49 ngx_pool_t *current; | 56 ngx_pool_t *current; |
50 ngx_chain_t *chain; | 57 ngx_chain_t *chain; |
51 ngx_pool_t *next; | |
52 ngx_pool_large_t *large; | 58 ngx_pool_large_t *large; |
53 ngx_pool_cleanup_t *cleanup; | 59 ngx_pool_cleanup_t *cleanup; |
54 ngx_log_t *log; | 60 ngx_log_t *log; |
55 }; | 61 }; |
56 | 62 |
67 | 73 |
68 ngx_pool_t *ngx_create_pool(size_t size, ngx_log_t *log); | 74 ngx_pool_t *ngx_create_pool(size_t size, ngx_log_t *log); |
69 void ngx_destroy_pool(ngx_pool_t *pool); | 75 void ngx_destroy_pool(ngx_pool_t *pool); |
70 | 76 |
71 void *ngx_palloc(ngx_pool_t *pool, size_t size); | 77 void *ngx_palloc(ngx_pool_t *pool, size_t size); |
72 void *ngx_palloc_aligned(ngx_pool_t *pool, size_t size); | 78 void *ngx_pnalloc(ngx_pool_t *pool, size_t size); |
73 void *ngx_pcalloc(ngx_pool_t *pool, size_t size); | 79 void *ngx_pcalloc(ngx_pool_t *pool, size_t size); |
74 ngx_int_t ngx_pfree(ngx_pool_t *pool, void *p); | 80 ngx_int_t ngx_pfree(ngx_pool_t *pool, void *p); |
75 | 81 |
76 | 82 |
77 ngx_pool_cleanup_t *ngx_pool_cleanup_add(ngx_pool_t *p, size_t size); | 83 ngx_pool_cleanup_t *ngx_pool_cleanup_add(ngx_pool_t *p, size_t size); |