http: Force-exit event loop after predefined time
This makes sure that the event loop eventually terminates, even if an event (like an open timeout, or a hanging connection) happens to be holding it up.
This commit is contained in:
parent
de9de2de36
commit
ec908d5f7a
1 changed files with 7 additions and 0 deletions
|
@ -457,6 +457,13 @@ void InterruptHTTPServer()
|
|||
// Reject requests on current connections
|
||||
evhttp_set_gencb(eventHTTP, http_reject_request_cb, NULL);
|
||||
}
|
||||
if (eventBase) {
|
||||
// Force-exit event loop after predefined time
|
||||
struct timeval tv;
|
||||
tv.tv_sec = 10;
|
||||
tv.tv_usec = 0;
|
||||
event_base_loopexit(eventBase, &tv);
|
||||
}
|
||||
if (workQueue)
|
||||
workQueue->Interrupt();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue