diff options
| author | ckrinitsin <101062646+ckrinitsin@users.noreply.github.com> | 2025-03-23 20:55:14 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-03-23 20:55:14 +0100 |
| commit | 66d87280633590818261b89c50fe1830092174e4 (patch) | |
| tree | d9231a5f2d52249657c7523af9c2ff11bdbe4196 /src/server/main.cpp | |
| parent | 3939238f3fe46ed36919f29cbebe824341689960 (diff) | |
| parent | d6ea41e1bef4a312a8a1d6683bb29aad777ec9ae (diff) | |
| download | BT-Programming-Assignment-66d87280633590818261b89c50fe1830092174e4.tar.gz BT-Programming-Assignment-66d87280633590818261b89c50fe1830092174e4.zip | |
Fixes
Diffstat (limited to 'src/server/main.cpp')
| -rw-r--r-- | src/server/main.cpp | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/src/server/main.cpp b/src/server/main.cpp index d724bd5..42b7668 100644 --- a/src/server/main.cpp +++ b/src/server/main.cpp @@ -1,14 +1,30 @@ +#include <csignal> #include <cstdint> #include <iostream> #include <stdexcept> #include <string> -#include "shared_memory_server.h" +#include "server.h" + +Server<int, int> shm; + +/** + * @brief Shuts the server down, when pressing <Ctrl+C>. + * + * @param signal Specifies the signal, which was caught. + */ +void signal_handler(int signal) +{ + if (signal == SIGINT) { + std::cout << "Server shutting down" << '\n'; + exit(0); + } +} int main(int argc, char* argv[]) { if (argc != 2) { - std::cout << "One argument required" << '\n'; + std::cout << "Usage: " << argv[0] << " <number-of-buckets>\n"; return 1; } @@ -20,7 +36,9 @@ int main(int argc, char* argv[]) return 1; } - Server<int, int> shm(size); + shm.initialize_hashtable(size); + + std::signal(SIGINT, signal_handler); shm.process_requests(); |