Mercurial > hg > nginx
comparison src/event/modules/ngx_poll_module.c @ 194:2357fa41738a
nginx-0.0.1-2003-11-21-09:30:49 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 21 Nov 2003 06:30:49 +0000 |
parents | 9f3a78b06c48 |
children | 05592fd7a436 |
comparison
equal
deleted
inserted
replaced
193:dd66383796a5 | 194:2357fa41738a |
---|---|
15 static int ngx_poll_del_event(ngx_event_t *ev, int event, u_int flags); | 15 static int ngx_poll_del_event(ngx_event_t *ev, int event, u_int flags); |
16 static int ngx_poll_process_events(ngx_log_t *log); | 16 static int ngx_poll_process_events(ngx_log_t *log); |
17 | 17 |
18 | 18 |
19 static struct pollfd *event_list; | 19 static struct pollfd *event_list; |
20 static u_int nevents; | 20 static int nevents; |
21 | 21 |
22 static ngx_event_t **event_index; | 22 static ngx_event_t **event_index; |
23 static ngx_event_t **ready_index; | 23 static ngx_event_t **ready_index; |
24 | 24 |
25 | 25 |
201 #if (NGX_DEBUG_EVENT) | 201 #if (NGX_DEBUG_EVENT) |
202 ngx_log_debug(c->log, "del event: %d, %d" _ c->fd _ event); | 202 ngx_log_debug(c->log, "del event: %d, %d" _ c->fd _ event); |
203 #endif | 203 #endif |
204 | 204 |
205 if (e == NULL || e->index == NGX_INVALID_INDEX) { | 205 if (e == NULL || e->index == NGX_INVALID_INDEX) { |
206 if (ev->index < --nevents) { | 206 if (ev->index < (u_int) --nevents) { |
207 event_list[ev->index] = event_list[nevents]; | 207 event_list[ev->index] = event_list[nevents]; |
208 event_index[ev->index] = event_index[nevents]; | 208 event_index[ev->index] = event_index[nevents]; |
209 event_index[ev->index]->index = ev->index; | 209 event_index[ev->index]->index = ev->index; |
210 } | 210 } |
211 | 211 |
220 } | 220 } |
221 | 221 |
222 | 222 |
223 static int ngx_poll_process_events(ngx_log_t *log) | 223 static int ngx_poll_process_events(ngx_log_t *log) |
224 { | 224 { |
225 int ready, found, j; | 225 int i, j, ready, nready, found; |
226 u_int nready, i; | |
227 ngx_msec_t timer; | 226 ngx_msec_t timer; |
228 ngx_err_t err; | 227 ngx_err_t err; |
229 ngx_cycle_t **cycle; | 228 ngx_cycle_t **cycle; |
230 ngx_event_t *ev; | 229 ngx_event_t *ev; |
231 ngx_epoch_msec_t delta; | 230 ngx_epoch_msec_t delta; |
237 if (timer) { | 236 if (timer) { |
238 ngx_gettimeofday(&tv); | 237 ngx_gettimeofday(&tv); |
239 delta = tv.tv_sec * 1000 + tv.tv_usec / 1000; | 238 delta = tv.tv_sec * 1000 + tv.tv_usec / 1000; |
240 | 239 |
241 } else { | 240 } else { |
242 timer = INFTIM; | 241 timer = (ngx_msec_t) INFTIM; |
243 delta = 0; | 242 delta = 0; |
244 } | 243 } |
245 | 244 |
246 #if (NGX_DEBUG_EVENT) | 245 #if (NGX_DEBUG_EVENT) |
247 for (i = 0; i < nevents; i++) { | 246 for (i = 0; i < nevents; i++) { |
250 } | 249 } |
251 | 250 |
252 ngx_log_debug(log, "poll timer: %d" _ timer); | 251 ngx_log_debug(log, "poll timer: %d" _ timer); |
253 #endif | 252 #endif |
254 | 253 |
255 ready = poll(event_list, nevents, timer); | 254 ready = poll(event_list, (u_int) nevents, (int) timer); |
256 | 255 |
257 if (ready == -1) { | 256 if (ready == -1) { |
258 err = ngx_errno; | 257 err = ngx_errno; |
259 } else { | 258 } else { |
260 err = 0; | 259 err = 0; |