]> granicus.if.org Git - libevent/commitdiff
Optimization in event_process_active(): ignore maxcb & endtime for highest priority...
authorAlexander Drozdov <al.drozdov@gmail.com>
Fri, 22 Jul 2011 08:29:07 +0000 (12:29 +0400)
committerNick Mathewson <nickm@torproject.org>
Thu, 18 Aug 2011 02:03:57 +0000 (22:03 -0400)
event.c

diff --git a/event.c b/event.c
index 0221ce2ab2ce9b0b121d6ccf308b96019322d007..baaef8cd46dbc1c06cb97ba2307d45986f2f4261 100644 (file)
--- a/event.c
+++ b/event.c
@@ -1439,8 +1439,12 @@ event_process_active(struct event_base *base)
        for (i = 0; i < base->nactivequeues; ++i) {
                if (TAILQ_FIRST(&base->activequeues[i]) != NULL) {
                        activeq = &base->activequeues[i];
-                       c = event_process_active_single_queue(base, activeq,
-                           maxcb, endtime);
+                       if (i == 0)
+                               c = event_process_active_single_queue(base, activeq,
+                                   INT_MAX, NULL);
+                       else
+                               c = event_process_active_single_queue(base, activeq,
+                                   maxcb, endtime);
                        if (c < 0)
                                return -1;
                        else if (c > 0)