// #include <ngx_queue.h> //ngx_queue_t测试 typedef struct { u_char * str; ngx_queue_t qEle; int num; }TestNote; ngx_int_t compTestNote(const ngx_queue_t *a, const ngx_queue_t *b) { TestNote* aNote = ngx_queue_data(a, TestNote, qEle); TestNote* bNote = ngx_queue_data(b, TestNote, qEle); return aNote->num > bNote->num; } //
ngx_queue_t queueContainer; ngx_queue_init(&queueContainer); int j = 0; TestNote note[5] = {0}; for(; j < 5; j++) { note[j].num = j; } ngx_queue_insert_tail(&queueContainer, ¬e[0].qEle); ngx_queue_insert_head(&queueContainer, ¬e[1].qEle); ngx_queue_insert_tail(&queueContainer, ¬e[2].qEle); ngx_queue_insert_after(&queueContainer, ¬e[3].qEle); ngx_queue_insert_tail(&queueContainer, ¬e[4].qEle); ngx_queue_t *q; for(q = ngx_queue_head(&queueContainer); q != ngx_queue_sentinel(&queueContainer); q = ngx_queue_next(q)) { TestNote * eleNote = ngx_queue_data(q, TestNote, qEle); printf("num=%d\n", eleNote->num); } ngx_queue_sort(q, compTestNote); for(q = ngx_queue_head(&queueContainer); q != ngx_queue_sentinel(&queueContainer); q = ngx_queue_next(q)) { TestNote * eleNote = ngx_queue_data(q, TestNote, qEle); printf("num=%d\n", eleNote->num); }
nginx_queue_t
最新推荐文章于 2022-04-04 15:30:05 发布