Mercurial > hg > nginx
comparison src/event/ngx_event_timer.c @ 316:a0beefedaf94
nginx-0.0.3-2004-04-15-00:34:05 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 14 Apr 2004 20:34:05 +0000 |
parents | 39b6f2df45c0 |
children | 446782c909b3 |
comparison
equal
deleted
inserted
replaced
315:39b6f2df45c0 | 316:a0beefedaf94 |
---|---|
38 { | 38 { |
39 ngx_msec_t timer; | 39 ngx_msec_t timer; |
40 ngx_rbtree_t *node; | 40 ngx_rbtree_t *node; |
41 | 41 |
42 if (ngx_event_timer_rbtree == &ngx_event_timer_sentinel) { | 42 if (ngx_event_timer_rbtree == &ngx_event_timer_sentinel) { |
43 return 0; | 43 return NGX_TIMER_INFINITE; |
44 } | 44 } |
45 | 45 |
46 if (ngx_mutex_lock(ngx_event_timer_mutex) == NGX_ERROR) { | 46 if (ngx_mutex_lock(ngx_event_timer_mutex) == NGX_ERROR) { |
47 return NGX_TIMER_ERROR; | 47 return NGX_TIMER_ERROR; |
48 } | 48 } |
57 ngx_elapsed_msec / NGX_TIMER_RESOLUTION * NGX_TIMER_RESOLUTION); | 57 ngx_elapsed_msec / NGX_TIMER_RESOLUTION * NGX_TIMER_RESOLUTION); |
58 #if 0 | 58 #if 0 |
59 (node->key * NGX_TIMER_RESOLUTION - ngx_elapsed_msec); | 59 (node->key * NGX_TIMER_RESOLUTION - ngx_elapsed_msec); |
60 #endif | 60 #endif |
61 | 61 |
62 return timer > 0 ? timer: -1 ; | 62 return timer > 0 ? timer: 0 ; |
63 } | 63 } |
64 | 64 |
65 | 65 |
66 void ngx_event_expire_timers(ngx_msec_t timer) | 66 void ngx_event_expire_timers(ngx_msec_t timer) |
67 { | 67 { |
81 node = ngx_rbtree_min((ngx_rbtree_t *) ngx_event_timer_rbtree, | 81 node = ngx_rbtree_min((ngx_rbtree_t *) ngx_event_timer_rbtree, |
82 &ngx_event_timer_sentinel); | 82 &ngx_event_timer_sentinel); |
83 | 83 |
84 ngx_mutex_unlock(ngx_event_timer_mutex); | 84 ngx_mutex_unlock(ngx_event_timer_mutex); |
85 | 85 |
86 if ((ngx_msec_t) node->key <= (ngx_msec_t) | 86 if (node->key <= (ngx_msec_t) |
87 (ngx_old_elapsed_msec + timer) / NGX_TIMER_RESOLUTION) | 87 (ngx_old_elapsed_msec + timer) / NGX_TIMER_RESOLUTION) |
88 { | 88 { |
89 ev = (ngx_event_t *) | 89 ev = (ngx_event_t *) |
90 ((char *) node - offsetof(ngx_event_t, rbtree_key)); | 90 ((char *) node - offsetof(ngx_event_t, rbtree_key)); |
91 | 91 |