voidngx_process_events_and_timers(ngx_cycle_t*cycle){ngx_uint_tflags;ngx_msec_ttimer,delta;if(ngx_timer_resolution){timer=NGX_TIMER_INFINITE;flags=0;}else{timer=ngx_event_find_timer();flags=NGX_UPDATE_TIME;#if(NGX_WIN32)/* handle signals from master in case of network inactivity */if(timer==NGX_TIMER_INFINITE||timer>500){timer=500;}#endif}if(ngx_use_accept_mutex){if(ngx_accept_disabled>0){ngx_accept_disabled--;}else{if(ngx_trylock_accept_mutex(cycle)==NGX_ERROR){return;}if(ngx_accept_mutex_held){flags|=NGX_POST_EVENTS;}else{if(timer==NGX_TIMER_INFINITE||timer>ngx_accept_mutex_delay){timer=ngx_accept_mutex_delay;}}}}if(!ngx_queue_empty(&ngx_posted_next_events)){ngx_event_move_posted_next(cycle);timer=0;}delta=ngx_current_msec;(void)ngx_process_events(cycle,timer,flags);delta=ngx_current_msec-delta;ngx_log_debug1(NGX_LOG_DEBUG_EVENT,cycle->log,0,"timer delta: %M",delta);ngx_event_process_posted(cycle,&ngx_posted_accept_events);if(ngx_accept_mutex_held){ngx_shmtx_unlock(&ngx_accept_mutex);}ngx_event_expire_timers();ngx_event_process_posted(cycle,&ngx_posted_events);}
if(ngx_timer_resolution){timer=NGX_TIMER_INFINITE;flags=0;}else{timer=ngx_event_find_timer();flags=NGX_UPDATE_TIME;#if(NGX_WIN32)/* handle signals from master in case of network inactivity */if(timer==NGX_TIMER_INFINITE||timer>500){timer=500;}#endif}