comparison src/event/ngx_event_timer.c @ 206:9aa426375256

nginx-0.0.1-2003-12-05-10:11:46 import
author Igor Sysoev <igor@sysoev.ru>
date Fri, 05 Dec 2003 07:11:46 +0000
parents 4a9a2b1dd6fa
children 6e0fef527732
comparison
equal deleted inserted replaced
205:4a9a2b1dd6fa 206:9aa426375256
21 void ngx_event_timer_done(ngx_cycle_t *cycle) 21 void ngx_event_timer_done(ngx_cycle_t *cycle)
22 { 22 {
23 } 23 }
24 24
25 25
26 int ngx_event_find_timer(void) 26 ngx_msec_t ngx_event_find_timer(void)
27 { 27 {
28 ngx_rbtree_t *node; 28 ngx_rbtree_t *node;
29 29
30 node = ngx_rbtree_min(ngx_event_timer_rbtree); 30 node = ngx_rbtree_min(ngx_event_timer_rbtree);
31 31
32 if (node == &sentinel) { 32 if (node == &sentinel) {
33 return 0; 33 return 0;
34 34
35 } else { 35 } else {
36 return node->key * NGX_TIMER_RESOLUTION - ngx_elapsed_msec; 36 return (ngx_msec_t)
37 (node->key * NGX_TIMER_RESOLUTION - ngx_elapsed_msec);
37 } 38 }
38 } 39 }
39 40
40 41
41 void ngx_event_expire_timers(ngx_msec_t timer) 42 void ngx_event_expire_timers(ngx_msec_t timer)
48 49
49 if (node == &sentinel) { 50 if (node == &sentinel) {
50 break; 51 break;
51 } 52 }
52 53
53 if ((ngx_msec_t) node->key <= 54 if ((ngx_msec_t) node->key <= (ngx_msec_t)
54 (ngx_elapsed_msec + timer) / NGX_TIMER_RESOLUTION) 55 (ngx_elapsed_msec + timer) / NGX_TIMER_RESOLUTION)
55 { 56 {
56 ev = (ngx_event_t *) 57 ev = (ngx_event_t *)
57 ((char *) node - offsetof(ngx_event_t, rbtree)); 58 ((char *) node - offsetof(ngx_event_t, rbtree_key));
58 59
59 ngx_del_timer(ev); 60 ngx_del_timer(ev);
60 61
61 if (ev->delayed) { 62 if (ev->delayed) {
62 ev->delayed = 0; 63 ev->delayed = 0;