Mercurial > hg > nginx
comparison src/event/modules/ngx_kqueue_module.c @ 51:a6afbb8a2ada
nginx-0.0.1-2003-01-24-09:20:47 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 24 Jan 2003 06:20:47 +0000 |
parents | b288069a8696 |
children | d1e42f1b8fd4 |
comparison
equal
deleted
inserted
replaced
50:b288069a8696 | 51:a6afbb8a2ada |
---|---|
173 u_int timer, delta; | 173 u_int timer, delta; |
174 ngx_event_t *ev; | 174 ngx_event_t *ev; |
175 struct timeval tv; | 175 struct timeval tv; |
176 struct timespec ts, *tp; | 176 struct timespec ts, *tp; |
177 | 177 |
178 timer = ngx_event_find_timer(); | |
179 | |
180 if (timer) { | |
181 ts.tv_sec = timer / 1000; | |
182 ts.tv_nsec = (timer % 1000) * 1000000; | |
183 tp = &ts; | |
184 gettimeofday(&tv, NULL); | |
185 delta = tv.tv_sec * 1000 + tv.tv_usec / 1000; | |
186 | |
187 } else { | |
188 timer = 0; | |
189 delta = 0; | |
190 tp = NULL; | |
191 } | |
192 | |
193 #if 0 | |
178 if (timer_queue.timer_next != &timer_queue) { | 194 if (timer_queue.timer_next != &timer_queue) { |
179 timer = timer_queue.timer_next->timer_delta; | 195 timer = timer_queue.timer_next->timer_delta; |
180 ts.tv_sec = timer / 1000; | 196 ts.tv_sec = timer / 1000; |
181 ts.tv_nsec = (timer % 1000) * 1000000; | 197 ts.tv_nsec = (timer % 1000) * 1000000; |
182 tp = &ts; | 198 tp = &ts; |
186 } else { | 202 } else { |
187 timer = 0; | 203 timer = 0; |
188 delta = 0; | 204 delta = 0; |
189 tp = NULL; | 205 tp = NULL; |
190 } | 206 } |
207 #endif | |
191 | 208 |
192 #if (NGX_DEBUG_EVENT) | 209 #if (NGX_DEBUG_EVENT) |
193 ngx_log_debug(log, "kevent timer: %d" _ timer); | 210 ngx_log_debug(log, "kevent timer: %d" _ timer); |
194 #endif | 211 #endif |
195 | 212 |
265 ngx_log_error(NGX_LOG_ALERT, log, 0, | 282 ngx_log_error(NGX_LOG_ALERT, log, 0, |
266 "unknown kevent filter %d" _ event_list[i].filter); | 283 "unknown kevent filter %d" _ event_list[i].filter); |
267 } | 284 } |
268 } | 285 } |
269 | 286 |
287 if (timer) { | |
288 ngx_event_expire_timers(delta); | |
289 } | |
290 | |
291 #if 0 | |
270 if (timer && timer_queue.timer_next != &timer_queue) { | 292 if (timer && timer_queue.timer_next != &timer_queue) { |
271 if (delta >= timer_queue.timer_next->timer_delta) { | 293 if (delta >= timer_queue.timer_next->timer_delta) { |
272 for ( ;; ) { | 294 for ( ;; ) { |
273 ev = timer_queue.timer_next; | 295 ev = timer_queue.timer_next; |
274 | 296 |
287 | 309 |
288 } else { | 310 } else { |
289 timer_queue.timer_next->timer_delta -= delta; | 311 timer_queue.timer_next->timer_delta -= delta; |
290 } | 312 } |
291 } | 313 } |
314 #endif | |
292 | 315 |
293 return NGX_OK; | 316 return NGX_OK; |
294 } | 317 } |
295 | 318 |
296 | 319 |