From 01d48e9537a083cba58d176e7a79a61c356fdf1f Mon Sep 17 00:00:00 2001 From: andrewlalis Date: Sat, 9 Aug 2025 11:20:02 -0400 Subject: [PATCH] Define custom task pool instead of default phobos. --- source/handy_http_transport/http1/task_pool.d | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source/handy_http_transport/http1/task_pool.d b/source/handy_http_transport/http1/task_pool.d index 9bd0402..b619cad 100644 --- a/source/handy_http_transport/http1/task_pool.d +++ b/source/handy_http_transport/http1/task_pool.d @@ -13,8 +13,11 @@ import slf4d; * and submitted to the standard task pool. */ class TaskPoolHttp1Transport : Http1Transport { + private TaskPool httpTaskPool; + this(HttpRequestHandler requestHandler, ushort port = 8080) { super(requestHandler, port); + this.httpTaskPool = new TaskPool(5); } override void runServer() { @@ -31,13 +34,14 @@ class TaskPoolHttp1Transport : Http1Transport { Socket clientSocket = serverSocket.accept(); trace("Accepted a new socket."); auto t = task!handleClient(clientSocket, requestHandler); - taskPool().put(t); + this.httpTaskPool.put(t); trace("Added handleClient() task to the task pool."); } catch (SocketAcceptException e) { warn("Failed to accept socket connection.", e); } } serverSocket.close(); + this.httpTaskPool.stop(); } override void stop() {