From 326e1e2abd65aa5b70a2db24d26dfb4a93a2f3e6 Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Sat, 1 Jan 2022 21:59:27 -0500 Subject: [PATCH] echo: add `--pool-size` param --- examples/echo.ml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/examples/echo.ml b/examples/echo.ml index 3b08e0cd..a4ff0be7 100644 --- a/examples/echo.ml +++ b/examples/echo.ml @@ -37,18 +37,22 @@ let middleware_stat () : S.Middleware.t * (unit -> string) = let () = let port_ = ref 8080 in let pool = ref false in + let pool_size = ref 0 in let j = ref 32 in Arg.parse (Arg.align [ "--port", Arg.Set_int port_, " set port"; "-p", Arg.Set_int port_, " set port"; "--debug", Arg.Unit (fun () -> S._enable_debug true), " enable debug"; "--pool", Arg.Set pool, " use a thread pool"; + "--pool-size", Arg.Set_int pool_size, " size of thread pool if --pool is enabled"; "-j", Arg.Set_int j, " maximum number of connections"; ]) (fun _ -> raise (Arg.Bad "")) "echo [option]*"; let new_thread = if !pool then ( - let j = if !j > 64 then Some (!j/4) else None in + let j = + if !pool_size > 0 then Some !pool_size + else if !j > 64 then Some (!j/4) else None in let pool = Tiny_httpd_pool.create ?j () in Some (fun f -> Tiny_httpd_pool.run pool f) ) else None