Mercurial > hg > nginx
comparison src/event/modules/ngx_kqueue_module.c @ 376:d0451e402e27
nginx-0.0.7-2004-07-05-10:55:54 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 05 Jul 2004 06:55:54 +0000 |
parents | 744ccb59062d |
children | 41437e4fd9b4 |
comparison
equal
deleted
inserted
replaced
375:744ccb59062d | 376:d0451e402e27 |
---|---|
277 } | 277 } |
278 | 278 |
279 | 279 |
280 static ngx_int_t ngx_kqueue_set_event(ngx_event_t *ev, int filter, u_int flags) | 280 static ngx_int_t ngx_kqueue_set_event(ngx_event_t *ev, int filter, u_int flags) |
281 { | 281 { |
282 struct kevent *kev, kv; | |
282 struct timespec ts; | 283 struct timespec ts; |
283 ngx_connection_t *c; | 284 ngx_connection_t *c; |
284 struct kevent *kev, kv; | |
285 | 285 |
286 c = ev->data; | 286 c = ev->data; |
287 | 287 |
288 ngx_log_debug3(NGX_LOG_DEBUG_EVENT, c->log, 0, | 288 ngx_log_debug3(NGX_LOG_DEBUG_EVENT, c->log, 0, |
289 "kevent set event: %d: ft:%d fl:%04X", | 289 "kevent set event: %d: ft:%d fl:%04X", |
368 struct timespec ts, *tp; | 368 struct timespec ts, *tp; |
369 | 369 |
370 for ( ;; ) { | 370 for ( ;; ) { |
371 timer = ngx_event_find_timer(); | 371 timer = ngx_event_find_timer(); |
372 | 372 |
373 #if (NGX_THREADS) | 373 #if (NGX_THREADS0) |
374 if (timer == NGX_TIMER_ERROR) { | 374 if (timer == NGX_TIMER_ERROR) { |
375 return NGX_ERROR; | 375 return NGX_ERROR; |
376 } | 376 } |
377 | 377 |
378 if (timer == NGX_TIMER_INFINITE || timer > 500) { | 378 if (timer == NGX_TIMER_INFINITE || timer > 500) { |
619 ngx_event_expire_timers((ngx_msec_t) delta); | 619 ngx_event_expire_timers((ngx_msec_t) delta); |
620 } | 620 } |
621 | 621 |
622 if (ngx_posted_events) { | 622 if (ngx_posted_events) { |
623 if (ngx_threaded) { | 623 if (ngx_threaded) { |
624 ngx_cond_signal(ngx_posted_events_cv); | 624 ngx_wakeup_worker_thread(cycle); |
625 | 625 |
626 } else { | 626 } else { |
627 ngx_event_process_posted(cycle); | 627 ngx_event_process_posted(cycle); |
628 } | 628 } |
629 } | 629 } |