diff options
Diffstat (limited to '')
| -rw-r--r-- | src/event/ngx_event_posted.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/event/ngx_event_posted.c b/src/event/ngx_event_posted.c index 41be0406f..b441b2918 100644 --- a/src/event/ngx_event_posted.c +++ b/src/event/ngx_event_posted.c @@ -73,8 +73,11 @@ void ngx_wakeup_worker_thread(ngx_cycle_t *cycle) ngx_int_t ngx_event_thread_process_posted(ngx_cycle_t *cycle) { + ngx_tls_t *tls; ngx_event_t *ev; + tls = ngx_thread_get_tls(); + for ( ;; ) { ev = (ngx_event_t *) ngx_posted_events; @@ -121,6 +124,8 @@ ngx_int_t ngx_event_thread_process_posted(ngx_cycle_t *cycle) ngx_mutex_unlock(ngx_posted_events_mutex); + tls->event = ev; + ev->event_handler(ev); if (ngx_mutex_lock(ngx_posted_events_mutex) == NGX_ERROR) { @@ -131,6 +136,9 @@ ngx_int_t ngx_event_thread_process_posted(ngx_cycle_t *cycle) ngx_unlock(ev->lock); } + ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0, + "posted event " PTR_FMT " is done", ev); + break; } } |
