From 82f911bf0c880fffe7b51ba7245b2a2a3705de25 Mon Sep 17 00:00:00 2001 From: Steffen Vogel Date: Tue, 27 Apr 2021 18:49:50 +0000 Subject: [PATCH] websocket: actively cancel lws_service() / poll() when new data is to be sent --- lib/web.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/web.cpp b/lib/web.cpp index 7e18fb570..04ce7c8a1 100644 --- a/lib/web.cpp +++ b/lib/web.cpp @@ -164,7 +164,7 @@ void Web::worker() logger->info("Started worker"); while (running) { - lws_service(context, 10); + lws_service(context, 0); while (!writables.empty()) { wsi = writables.pop(); @@ -291,4 +291,5 @@ void Web::stop() void Web::callbackOnWritable(lws *wsi) { writables.push(wsi); + lws_cancel_service(context); }