ソースを参照

Run timeouts that will expire in less than one millisecond.

The timeouts for poll and epoll are given in milliseconds,
which caused busy looping in the event loop for timeouts
with less time remaining.
master
Richard Nyberg 16年前
コミット
4539bc6fae
1個のファイルの変更1行の追加1行の削除
  1. +1
    -1
      evloop/timer.c

+ 1
- 1
evloop/timer.c ファイルの表示

@@ -106,7 +106,7 @@ evtimers_run(void)
evtimer_gettime(&now);
while (timeheap_size() > 0) {
struct timespec diff = subtime(timeheap_top(), now);
if (diff.tv_sec < 0) {
if (diff.tv_sec < 0 || (diff.tv_sec == 0 && diff.tv_nsec < 1000000)) {
struct timeout *t = timeheap_remove_top();
t->th.i = -1;
t->cb(-1, EV_TIMEOUT, t->arg);


読み込み中…
キャンセル
保存