comparison src/event/ngx_event.h @ 5821:3f5f0ab59b35

Events: processing of posted events changed from LIFO to FIFO. In theory, this can provide a bit better distribution of latencies. Also it simplifies the code, since ngx_queue_t is now used instead of custom implementation.
author Valentin Bartenev <vbart@nginx.com>
date Mon, 01 Sep 2014 18:20:18 +0400
parents 3377f9459e99
children 3efdd7788bb0
comparison
equal deleted inserted replaced
5820:3377f9459e99 5821:3f5f0ab59b35
71 71
72 unsigned deferred_accept:1; 72 unsigned deferred_accept:1;
73 73
74 /* the pending eof reported by kqueue, epoll or in aio chain operation */ 74 /* the pending eof reported by kqueue, epoll or in aio chain operation */
75 unsigned pending_eof:1; 75 unsigned pending_eof:1;
76
77 unsigned posted:1;
76 78
77 #if (NGX_WIN32) 79 #if (NGX_WIN32)
78 /* setsockopt(SO_UPDATE_ACCEPT_CONTEXT) was successful */ 80 /* setsockopt(SO_UPDATE_ACCEPT_CONTEXT) was successful */
79 unsigned accept_context_updated:1; 81 unsigned accept_context_updated:1;
80 #endif 82 #endif
123 125
124 ngx_log_t *log; 126 ngx_log_t *log;
125 127
126 ngx_rbtree_node_t timer; 128 ngx_rbtree_node_t timer;
127 129
130 /* the posted queue */
131 ngx_queue_t queue;
132
128 unsigned closed:1; 133 unsigned closed:1;
129 134
130 /* to test on worker exit */ 135 /* to test on worker exit */
131 unsigned channel:1; 136 unsigned channel:1;
132 unsigned resolver:1; 137 unsigned resolver:1;
133
134 /* the links of the posted queue */
135 ngx_event_t *next;
136 ngx_event_t **prev;
137 138
138 139
139 #if 0 140 #if 0
140 141
141 /* the threads support */ 142 /* the threads support */