comparison src/event/modules/ngx_kqueue_module.c @ 207:6e0fef527732

nginx-0.0.1-2003-12-05-20:07:27 import
author Igor Sysoev <igor@sysoev.ru>
date Fri, 05 Dec 2003 17:07:27 +0000
parents 4a9a2b1dd6fa
children e1c815be05ae
comparison
equal deleted inserted replaced
206:9aa426375256 207:6e0fef527732
352 ngx_epoch_msec_t delta; 352 ngx_epoch_msec_t delta;
353 struct timeval tv; 353 struct timeval tv;
354 struct timespec ts, *tp; 354 struct timespec ts, *tp;
355 355
356 timer = ngx_event_find_timer(); 356 timer = ngx_event_find_timer();
357 ngx_old_elapsed_msec = ngx_elapsed_msec;
357 358
358 if (timer) { 359 if (timer) {
359 ts.tv_sec = timer / 1000; 360 ts.tv_sec = timer / 1000;
360 ts.tv_nsec = (timer % 1000) * 1000000; 361 ts.tv_nsec = (timer % 1000) * 1000000;
361 tp = &ts; 362 tp = &ts;
396 ngx_time_update(); 397 ngx_time_update();
397 } 398 }
398 399
399 if (timer) { 400 if (timer) {
400 delta = ngx_elapsed_msec - delta; 401 delta = ngx_elapsed_msec - delta;
401
402 #if 0
403 delta = tv.tv_sec * 1000 + tv.tv_usec / 1000 - delta;
404
405 /*
406 * The expired timers must be handled before a processing of the events
407 * because the new timers can be added during a processing
408 */
409
410 ngx_event_expire_timers((ngx_msec_t) delta);
411
412 ngx_event_set_timer_delta((ngx_msec_t) delta);
413 #endif
414 402
415 } else { 403 } else {
416 if (events == 0) { 404 if (events == 0) {
417 ngx_log_error(NGX_LOG_ALERT, log, 0, 405 ngx_log_error(NGX_LOG_ALERT, log, 0,
418 "kevent() returned no events without timeout"); 406 "kevent() returned no events without timeout");
517 505
518 if (timer && delta) { 506 if (timer && delta) {
519 ngx_event_expire_timers((ngx_msec_t) delta); 507 ngx_event_expire_timers((ngx_msec_t) delta);
520 } 508 }
521 509
522 #if 0
523 if (timer) {
524 ngx_event_expire_timers((ngx_msec_t) delta);
525 }
526 #endif
527
528 return NGX_OK; 510 return NGX_OK;
529 } 511 }
530 512
531 513
532 static void *ngx_kqueue_create_conf(ngx_cycle_t *cycle) 514 static void *ngx_kqueue_create_conf(ngx_cycle_t *cycle)