comparison src/event/modules/ngx_kqueue_module.c @ 205:4a9a2b1dd6fa

nginx-0.0.1-2003-12-04-17:53:00 import
author Igor Sysoev <igor@sysoev.ru>
date Thu, 04 Dec 2003 14:53:00 +0000
parents 11fbd0fc041d
children 6e0fef527732
comparison
equal deleted inserted replaced
204:e0bcfb77d6c7 205:4a9a2b1dd6fa
358 if (timer) { 358 if (timer) {
359 ts.tv_sec = timer / 1000; 359 ts.tv_sec = timer / 1000;
360 ts.tv_nsec = (timer % 1000) * 1000000; 360 ts.tv_nsec = (timer % 1000) * 1000000;
361 tp = &ts; 361 tp = &ts;
362 362
363 #if 0
363 ngx_gettimeofday(&tv); 364 ngx_gettimeofday(&tv);
364 delta = tv.tv_sec * 1000 + tv.tv_usec / 1000; 365 delta = tv.tv_sec * 1000 + tv.tv_usec / 1000;
366 #endif
365 367
366 } else { 368 } else {
367 delta = 0; 369 delta = 0;
368 tp = NULL; 370 tp = NULL;
369 } 371 }
382 384
383 nchanges = 0; 385 nchanges = 0;
384 386
385 ngx_gettimeofday(&tv); 387 ngx_gettimeofday(&tv);
386 388
389 #if 1
390 delta = ngx_elapsed_msec;
391 #endif
392 ngx_elapsed_msec = tv.tv_sec * 1000 + tv.tv_usec / 1000 - ngx_start_msec;
393
387 if (ngx_cached_time != tv.tv_sec) { 394 if (ngx_cached_time != tv.tv_sec) {
388 ngx_cached_time = tv.tv_sec; 395 ngx_cached_time = tv.tv_sec;
389 ngx_time_update(); 396 ngx_time_update();
390 } 397 }
391 398
392 if (timer) { 399 if (timer) {
400 delta = ngx_elapsed_msec - delta;
401
402 #if 0
393 delta = tv.tv_sec * 1000 + tv.tv_usec / 1000 - delta; 403 delta = tv.tv_sec * 1000 + tv.tv_usec / 1000 - delta;
394 404
395 #if (NGX_DEBUG_EVENT)
396 ngx_log_debug(log, "kevent timer: %d, delta: %d" _ timer _ (int) delta);
397 #endif
398
399 #if 0
400 /* 405 /*
401 * The expired timers must be handled before a processing of the events 406 * The expired timers must be handled before a processing of the events
402 * because the new timers can be added during a processing 407 * because the new timers can be added during a processing
403 */ 408 */
404 409
405 ngx_event_expire_timers((ngx_msec_t) delta); 410 ngx_event_expire_timers((ngx_msec_t) delta);
406 #endif
407 411
408 ngx_event_set_timer_delta((ngx_msec_t) delta); 412 ngx_event_set_timer_delta((ngx_msec_t) delta);
413 #endif
409 414
410 } else { 415 } else {
411 if (events == 0) { 416 if (events == 0) {
412 ngx_log_error(NGX_LOG_ALERT, log, 0, 417 ngx_log_error(NGX_LOG_ALERT, log, 0,
413 "kevent() returned no events without timeout"); 418 "kevent() returned no events without timeout");
414 return NGX_ERROR; 419 return NGX_ERROR;
415 } 420 }
421 }
416 422
417 #if (NGX_DEBUG_EVENT) 423 #if (NGX_DEBUG_EVENT)
418 ngx_log_debug(log, "kevent timer: %d, delta: %d" _ timer _ (int) delta); 424 ngx_log_debug(log, "kevent timer: %d, delta: %d" _ timer _ (int) delta);
419 #endif 425 #endif
420 }
421 426
422 if (err) { 427 if (err) {
423 ngx_log_error(NGX_LOG_ALERT, log, err, "kevent() failed"); 428 ngx_log_error(NGX_LOG_ALERT, log, err, "kevent() failed");
424 return NGX_ERROR; 429 return NGX_ERROR;
425 } 430 }
508 "unexpected kevent() filter %d", 513 "unexpected kevent() filter %d",
509 event_list[i].filter); 514 event_list[i].filter);
510 } 515 }
511 } 516 }
512 517
518 if (timer && delta) {
519 ngx_event_expire_timers((ngx_msec_t) delta);
520 }
521
522 #if 0
513 if (timer) { 523 if (timer) {
514 ngx_event_expire_timers((ngx_msec_t) delta); 524 ngx_event_expire_timers((ngx_msec_t) delta);
515 } 525 }
526 #endif
516 527
517 return NGX_OK; 528 return NGX_OK;
518 } 529 }
519 530
520 531