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 | |
parent | e89c4581f4706187052671a8a40dda4fe3e3c391 (diff) |
nginx-0.0.1-2003-12-19-15:45:27 import
Diffstat (limited to 'src/event')
-rw-r--r-- | src/event/modules/ngx_kqueue_module.c | 7 | ||||
-rw-r--r-- | src/event/ngx_event_timer.c | 20 | ||||
-rw-r--r-- | src/event/ngx_event_timer.h | 8 |
3 files changed, 20 insertions, 15 deletions
diff --git a/src/event/modules/ngx_kqueue_module.c b/src/event/modules/ngx_kqueue_module.c index 0ddf4f67e..669f510c4 100644 --- a/src/event/modules/ngx_kqueue_module.c +++ b/src/event/modules/ngx_kqueue_module.c @@ -286,10 +286,9 @@ static int ngx_kqueue_set_event(ngx_event_t *ev, int filter, u_int flags) c = ev->data; -#if (NGX_DEBUG_EVENT) - ngx_log_debug(ev->log, "kqueue set event: %d: ft:%d fl:%08x" _ - c->fd _ filter _ flags); -#endif + ngx_log_debug3(NGX_LOG_DEBUG_EVENT, c->log, 0, + "kevent set event: %d: ft:%d fl:%04X", + c->fd, filter, flags); if (nchanges >= max_changes) { ngx_log_error(NGX_LOG_WARN, ev->log, 0, 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) { diff --git a/src/event/ngx_event_timer.h b/src/event/ngx_event_timer.h index 51e3229c9..cb61f3660 100644 --- a/src/event/ngx_event_timer.h +++ b/src/event/ngx_event_timer.h @@ -16,7 +16,7 @@ * 100 msec - 13 years 8 months */ -#define NGX_TIMER_RESOLUTION 50 +#define NGX_TIMER_RESOLUTION 1 #if 0 @@ -36,6 +36,9 @@ extern ngx_rbtree_t ngx_event_timer_sentinel; ngx_inline static void ngx_event_del_timer(ngx_event_t *ev) { + ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ev->log, 0, + "event timer del: %d", ev->rbtree_key); + ngx_rbtree_delete(&ngx_event_timer_rbtree, &ngx_event_timer_sentinel, (ngx_rbtree_t *) &ev->rbtree_key); @@ -56,6 +59,9 @@ ngx_inline static void ngx_event_add_timer(ngx_event_t *ev, ngx_msec_t timer) (ngx_elapsed_msec + timer) / NGX_TIMER_RESOLUTION; #endif + ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ev->log, 0, + "event timer add: %d", ev->rbtree_key); + ngx_rbtree_insert(&ngx_event_timer_rbtree, &ngx_event_timer_sentinel, (ngx_rbtree_t *) &ev->rbtree_key); |