mirror of
https://github.com/nginx/nginx.git
synced 2024-12-15 21:39:00 +08:00
37d24e7e3b
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.
36 lines
635 B
C
36 lines
635 B
C
|
|
/*
|
|
* Copyright (C) Igor Sysoev
|
|
* Copyright (C) Nginx, Inc.
|
|
*/
|
|
|
|
|
|
#include <ngx_config.h>
|
|
#include <ngx_core.h>
|
|
#include <ngx_event.h>
|
|
|
|
|
|
ngx_queue_t ngx_posted_accept_events;
|
|
ngx_queue_t ngx_posted_events;
|
|
|
|
|
|
void
|
|
ngx_event_process_posted(ngx_cycle_t *cycle, ngx_queue_t *posted)
|
|
{
|
|
ngx_queue_t *q;
|
|
ngx_event_t *ev;
|
|
|
|
while (!ngx_queue_empty(posted)) {
|
|
|
|
q = ngx_queue_head(posted);
|
|
ev = ngx_queue_data(q, ngx_event_t, queue);
|
|
|
|
ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
|
|
"posted event %p", ev);
|
|
|
|
ngx_delete_posted_event(ev);
|
|
|
|
ev->handler(ev);
|
|
}
|
|
}
|