diff options
| author | Stefan Boberg <[email protected]> | 2021-08-09 14:14:12 +0200 |
|---|---|---|
| committer | Stefan Boberg <[email protected]> | 2021-08-09 14:14:12 +0200 |
| commit | 5164591d05d1bb1cf00371758155e7f523d6ffe5 (patch) | |
| tree | dae114b14de6cd6479f21f7607026cadf6c79879 /zenserver/zenserver.cpp | |
| parent | Added ZenServerState implementation, used to track and enumerate live Zen ser... (diff) | |
| download | zen-5164591d05d1bb1cf00371758155e7f523d6ffe5.tar.xz zen-5164591d05d1bb1cf00371758155e7f523d6ffe5.zip | |
Added self-registration of Zen server instance in shared state map
Diffstat (limited to 'zenserver/zenserver.cpp')
| -rw-r--r-- | zenserver/zenserver.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/zenserver/zenserver.cpp b/zenserver/zenserver.cpp index bf1528d98..573145d0d 100644 --- a/zenserver/zenserver.cpp +++ b/zenserver/zenserver.cpp @@ -9,6 +9,7 @@ #include <zencore/thread.h> #include <zencore/timer.h> #include <zencore/windows.h> +#include <zenserverprocess.h> #include <zenstore/cas.h> #include <zenstore/cidstore.h> @@ -280,6 +281,21 @@ main(int argc, char* argv[]) try { + ZenServerState ServerState; + ServerState.Initialize(); + ServerState.Sweep(); + + if (ZenServerState::ZenServerEntry* Entry = ServerState.Lookup(GlobalOptions.BasePort)) + { + // Instance already running for this port? Should double check pid + + spdlog::warn("Looks like there is already a process listening to this port (pid: {})", Entry->Pid); + } + else + { + ServerState.Register(GlobalOptions.BasePort); + } + std::unique_ptr<std::thread> ShutdownThread; std::unique_ptr<zen::NamedEvent> ShutdownEvent; |