diff options
author | Igor Sysoev <igor@sysoev.ru> | 2003-12-19 15:45:27 +0300 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2003-12-19 15:45:27 +0300 |
commit | 1cd1e2741ab83cd7e0816e8b8ff43b3668703ea6 (patch) | |
tree | 6a7000dd1f33ce80dfb7ec3863a4de3002f5f772 /src/event/ngx_event_timer.c | |
parent | e89c4581f4706187052671a8a40dda4fe3e3c391 (diff) |
nginx-0.0.1-2003-12-19-15:45:27 import
Diffstat (limited to 'src/event/ngx_event_timer.c')
-rw-r--r-- | src/event/ngx_event_timer.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/event/ngx_event_timer.c b/src/event/ngx_event_timer.c index 416cb13f0..72f2cd2bd 100644 --- a/src/event/ngx_event_timer.c +++ b/src/event/ngx_event_timer.c @@ -21,9 +21,9 @@ int ngx_event_timer_init(ngx_cycle_t *cycle) } ngx_event_timer_rbtree = &ngx_event_timer_sentinel; - ngx_event_timer_sentinel.left = &ngx_event_timer_sentinel; #if 0 + ngx_event_timer_sentinel.left = &ngx_event_timer_sentinel; ngx_event_timer_sentinel.right = &ngx_event_timer_sentinel; ngx_event_timer_sentinel.parent = &ngx_event_timer_sentinel; #endif @@ -41,19 +41,18 @@ ngx_msec_t ngx_event_find_timer(void) { ngx_rbtree_t *node; - node = ngx_rbtree_min(ngx_event_timer_rbtree, &ngx_event_timer_sentinel); - - if (node == &ngx_event_timer_sentinel) { + if (ngx_event_timer_rbtree == &ngx_event_timer_sentinel) { return 0; + } + + node = ngx_rbtree_min(ngx_event_timer_rbtree, &ngx_event_timer_sentinel); - } else { - return (ngx_msec_t) + return (ngx_msec_t) (node->key * NGX_TIMER_RESOLUTION - ngx_elapsed_msec / NGX_TIMER_RESOLUTION * NGX_TIMER_RESOLUTION); #if 0 (node->key * NGX_TIMER_RESOLUTION - ngx_elapsed_msec); #endif - } } @@ -63,13 +62,14 @@ void ngx_event_expire_timers(ngx_msec_t timer) ngx_rbtree_t *node; for ( ;; ) { - node = ngx_rbtree_min(ngx_event_timer_rbtree, - &ngx_event_timer_sentinel); - if (node == &ngx_event_timer_sentinel) { + if (ngx_event_timer_rbtree == &ngx_event_timer_sentinel) { break; } + node = ngx_rbtree_min(ngx_event_timer_rbtree, + &ngx_event_timer_sentinel); + if ((ngx_msec_t) node->key <= (ngx_msec_t) (ngx_old_elapsed_msec + timer) / NGX_TIMER_RESOLUTION) { |