1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
   | static ngx_int_t ngx_epoll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) { 	 events = epoll_wait(ep, event_list, (int) nevents, timer); 	   for (i = 0; i < events; i++) {         c = event_list[i].data.ptr;
          instance = (uintptr_t) c & 1;         c = (ngx_connection_t *) ((uintptr_t) c & (uintptr_t) ~1);
          rev = c->read;         //(gdb) p rev->handler 		//$3 = (ngx_event_handler_pt) 0x5555555cb7f6 <ngx_http_wait_request_handler>          rev->handler(rev);         } 	 }
  void ngx_event_accept(ngx_event_t *ev) {   ngx_accept_disabled = ngx_cycle->connection_n / 8- ngx_cycle->free_connection_n;     ngx_listening_t   *ls;     /* 	(gdb) p ls->handler 	$5 = (ngx_connection_handler_pt) 0x5555555cb32d  	<ngx_http_init_connection> 	*/     ls->handler(c);
  }
   |