diff --git a/apps/EchoServer.cpp b/apps/EchoServer.cpp index b88560b6f699cab977b7ffbc78cbdf57b7d3008b..c64a59492e19f04e5ca8c77df012855b7eafc5cf 100644 --- a/apps/EchoServer.cpp +++ b/apps/EchoServer.cpp @@ -21,12 +21,13 @@ #include <compare> #endif -const std::string HOST = "::"; -const std::string PORT = "12345"; +static const std::string HOST = "::"; +static const std::string PORT = "12345"; +static const int BACKLOG = 1024; -unsigned int computations_us = 0; +static unsigned int computations_us = 0; -std::atomic<bool> quit = false; +static std::atomic<bool> quit = false; auto main(int argc, char* argv[]) -> int { std::string host = HOST; @@ -48,7 +49,7 @@ auto main(int argc, char* argv[]) -> int { std::cout << "Echoserver listening on " << host << ":" << port << std::endl; Runtime runtime; - auto* listener = emper::io::tcp_listener(host, port, [](int socket) { + auto serverFunc = [](int socket) { // NOLINTNEXTLINE(modernize-avoid-c-arrays) char buf[1024]; while (!quit.load(std::memory_order_consume)) { @@ -83,7 +84,10 @@ auto main(int argc, char* argv[]) -> int { } emper::io::closeAndForget(socket); - }); + }; + + auto* listener = + emper::io::tcp_listener(host, port, serverFunc, BACKLOG, {emper::io::SockOpt::ReusePort}); if (!listener) { exit(EXIT_FAILURE);