ngx_palloc.c文件
ngx_palloc_large_hm是自己写的代码没有nginx原版的ngx_palloc_large写的好,细节要品味才会发现nginx的美
nginx链表的套路,正好是两种插入“从前插”和“从后插”,有些许差别
#include <stdio.h>
#include <stdlib.h>
#define ITEM 20
#define u_char unsigned char
#define ngx_free free
typedef struct ngx_pool_s ngx_pool_t;
typedef intptr_t ngx_int_t;
typedef uintptr_t ngx_uint_t;
typedef struct ngx_pool_large_s ngx_pool_large_t;
struct ngx_pool_large_s {
ngx_pool_large_t *next;
void *alloc;
};
typedef struct {
u_char *last;
u_char *end;
ngx_pool_t *next;
ngx_