9.8.4 post事件队列

上文已经介绍过post事件的意义,本节来看一下post事件处理的实现方法。下面是两个post事件队列的定义:


ngx_thread_volatile ngx_event_t*ngx_posted_accept_events;

ngx_thread_volatile ngx_event_t*ngx_posted_events;


这两个指针都指向事件队列中的首个事件。这些事件间是以双向链表的形式组织成post事件队列的。注意,9.2节中ngx_event_t结构体的next和prev成员仅用于post事件队列。

对于post事件队列的操作方法共有4个,见表9-6。

在9.6.3节中已经介绍过ngx_post_event方法的应用,它会将事件添加到队列中,那么,post事件什么时候会执行呢?在9.8.5节我们就会介绍ngx_event_process_posted是如何被调用的。

9.8.4 post事件队列 - 图1