aboutsummaryrefslogtreecommitdiff
path: root/src/event/modules/ngx_kqueue_module.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2003-11-10 21:09:22 +0000
committerIgor Sysoev <igor@sysoev.ru>2003-11-10 21:09:22 +0000
commitd59a047a7070dc6af13b2e35c097efccc8ce38d0 (patch)
tree7efbd7a8fd2e4d871da3165dab7287c49fb0341e /src/event/modules/ngx_kqueue_module.c
parent7832933eed3cb0187eca4fba87076f10c897925e (diff)
downloadnginx-d59a047a7070dc6af13b2e35c097efccc8ce38d0.tar.gz
nginx-d59a047a7070dc6af13b2e35c097efccc8ce38d0.zip
nginx-0.0.1-2003-11-11-00:09:22 import
Diffstat (limited to 'src/event/modules/ngx_kqueue_module.c')
-rw-r--r--src/event/modules/ngx_kqueue_module.c22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/event/modules/ngx_kqueue_module.c b/src/event/modules/ngx_kqueue_module.c
index c896a8380..831bc7720 100644
--- a/src/event/modules/ngx_kqueue_module.c
+++ b/src/event/modules/ngx_kqueue_module.c
@@ -1,6 +1,6 @@
/*
- * Copyright (C) 2002-2003 Igor Sysoev, http://sysoev.ru
+ * Copyright (C) 2002-2003 Igor Sysoev, http://sysoev.ru/en/
*/
@@ -347,16 +347,24 @@ static int ngx_kqueue_process_events(ngx_log_t *log)
nchanges = 0;
+ gettimeofday(&tv, NULL);
+
+ if (ngx_cached_time != tv.tv_sec) {
+ ngx_cached_time = tv.tv_sec;
+ ngx_time_update();
+ }
+
if (timer) {
- gettimeofday(&tv, NULL);
delta = tv.tv_sec * 1000 + tv.tv_usec / 1000 - delta;
#if (NGX_DEBUG_EVENT)
ngx_log_debug(log, "kevent timer: %d, delta: %d" _ timer _ delta);
#endif
- /* The expired timers must be handled before a processing of the events
- because the new timers can be added during a processing */
+ /*
+ * The expired timers must be handled before a processing of the events
+ * because the new timers can be added during a processing
+ */
ngx_event_expire_timers(delta);
@@ -413,8 +421,10 @@ static int ngx_kqueue_process_events(ngx_log_t *log)
instance = (uintptr_t) ev & 1;
ev = (void *) ((uintptr_t) ev & ~1);
- /* It's a stale event from a file descriptor
- that was just closed in this iteration */
+ /*
+ * it's a stale event from a file descriptor
+ * that was just closed in this iteration
+ */
if (ev->active == 0 || ev->instance != instance) {
ngx_log_debug(log, "stale kevent");