Queue the Multi thread again if there's a pending request in the queue (#1276)

This commit is contained in:
Joshua Granick
2019-01-21 12:32:53 -08:00
parent e582f8f6b4
commit ed7cf4fbb7

View File

@@ -343,7 +343,7 @@ class NativeHTTPRequest {
#if (cpp || neko)
if (multiAddHandle == null) multiAddHandle = new Deque<CURL> ();
multiAddHandle.push (curl);
multiAddHandle.add (curl);
#end
if (multiThreadPool == null) {
@@ -610,15 +610,26 @@ class NativeHTTPRequest {
private static function multiThreadPool_onComplete (_):Void {
if (multiProgressTimer != null) {
var curl = multiAddHandle.pop (false);
multiProgressTimer.stop ();
multiProgressTimer = null;
if (curl != null) {
multiAddHandle.push (curl);
multiThreadPool.queue ();
} else {
if (multiProgressTimer != null) {
multiProgressTimer.stop ();
multiProgressTimer = null;
}
multiThreadPoolRunning = false;
}
multiThreadPoolRunning = false;
}