26 asio::io_context &io_context,
27 const std::string &file_name,
28 const std::string &endpoint_path,
29 std::chrono::seconds timeout
32 client(file, connection),
46 static int main(
int argc,
char **argv)
51 std::cerr <<
"usage: " << argv[0] <<
" <timeout_seconds> <db>+\n";
52 std::cerr <<
"file name: <db>.joedb\n";
53 std::cerr <<
"socket name: <db>.sock\n";
54 std::cerr <<
"example: " << argv[0] <<
" 10 db1 db2 db3 db4\n";
58 std::chrono::seconds timeout(std::stoi(argv[1]));
60 IO_Context_Wrapper io_context_wrapper;
62 std::list<std::unique_ptr<Server_Data>> servers;
64 for (
int i = 2; i < argc; i++)
66 std::string base_name(argv[i]);
71 io_context_wrapper.io_context,
79 io_context_wrapper.run();
86int main(
int argc,
char **argv)
Server_Data(asio::io_context &io_context, const std::string &file_name, const std::string &endpoint_path, std::chrono::seconds timeout)
@ write_existing_or_create_new
either write_existing or create_new depending on whether the file exists. Racy in Posix,...
int main_exception_catcher(int(*main)(int, char **), int argc, char **argv)
Catch exception from main.