【nginx】双向队列(ngx_queue.h)的分割队列(链表) ngx_queue_split操作
2014-02-10 10:19
302 查看
代码参考自1.5.10 ,参考 /article/1451052.html
nginx双向队列(ngx_queue.h)的分割队列(链表)操作:
其中,h是原双向链表的头,n是新的一个节点(代表被分裂后新链表的头,这个节点看起来是新创建的),q是被分离的地方,q前仍旧属于h双向队列,q后属于n双向队列。
分裂过程就是几个指针指来指去,让h、q、n的六个指针域都赋值。
分裂过程如下:
1. 注意,每个节点,都有()括起来。
2. 六个指针的赋值过程:
nginx双向队列(ngx_queue.h)的分割队列(链表)操作:
#define ngx_queue_split(h, q, n) \ (n)->prev = (h)->prev; \ (n)->prev->next = n; \ (n)->next = q; \ (h)->prev = (q)->prev; \ (h)->prev->next = h; \ (q)->prev = n;
其中,h是原双向链表的头,n是新的一个节点(代表被分裂后新链表的头,这个节点看起来是新创建的),q是被分离的地方,q前仍旧属于h双向队列,q后属于n双向队列。
分裂过程就是几个指针指来指去,让h、q、n的六个指针域都赋值。
分裂过程如下:
1. 注意,每个节点,都有()括起来。
2. 六个指针的赋值过程:
相关文章推荐
- 【nginx】双向队列(ngx_queue.h)的合并队列(链表) ngx_queue_add操作
- Nginx 队列双向链表结构 ngx_queue_t
- Nginx 队列双向链表结构 ngx_quene_t
- Nginx高级数据结构总结之 ngx_queue_t 双向链表
- nginx双向队列ngx_queue_t使用例子
- nginx源码剖析---队列结构ngx_queue_t
- Nginx源码分析 - 基础数据结构篇 - 链表结构 ngx_queue.c
- 解码Nginx:双向队列(Queue)
- Nginx高效数据结构(3)——队列(ngx_queue_t)
- nginx源码分析—队列结构ngx_queue_t
- 队列 queue 的链表实现操作 -C++
- Nginx源码分析---队列结构ngx_queue_t
- nginx源码分析—队列结构ngx_queue_t
- nginx学习之 双向链表nginx_queue_t 性能测试: 10倍于STL!
- Nginx:双向队列(Queue)
- nginx源码分析—队列结构ngx_queue_t
- nginx源码分析—队列结构ngx_queue_t
- 双向链表的插入操作
- 【C++】模版实现双向链表的各种操作(如:逆置、去重Unique、分类(冒泡)、合并)
- 双向链表的操作 模板的特化