Loading src/httpd.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -1324,7 +1324,10 @@ void libhttppp::HttpEvent::Http3StreamEvent(netplus::socket *sock, } else { q->pumpIncoming(); if (tr->slots[0].ResponsePending.exchange(false)) { // Upstream signalled more data is coming // — retry immediately without sleeping. empty_streak = 0; continue; } else { ++empty_streak; } Loading @@ -1336,9 +1339,8 @@ void libhttppp::HttpEvent::Http3StreamEvent(netplus::socket *sock, break; } // Brief sleep to let upstream produce data. // Use a short 1ms sleep instead of 10ms to // avoid stalling large streaming transfers // (e.g. images) over HTTP/3. // Use a short 1ms sleep to avoid busy-waiting // while upstream fetches the next chunk. std::this_thread::sleep_for( std::chrono::milliseconds(1)); } Loading Loading
src/httpd.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -1324,7 +1324,10 @@ void libhttppp::HttpEvent::Http3StreamEvent(netplus::socket *sock, } else { q->pumpIncoming(); if (tr->slots[0].ResponsePending.exchange(false)) { // Upstream signalled more data is coming // — retry immediately without sleeping. empty_streak = 0; continue; } else { ++empty_streak; } Loading @@ -1336,9 +1339,8 @@ void libhttppp::HttpEvent::Http3StreamEvent(netplus::socket *sock, break; } // Brief sleep to let upstream produce data. // Use a short 1ms sleep instead of 10ms to // avoid stalling large streaming transfers // (e.g. images) over HTTP/3. // Use a short 1ms sleep to avoid busy-waiting // while upstream fetches the next chunk. std::this_thread::sleep_for( std::chrono::milliseconds(1)); } Loading