benchmark silo added
[c11concurrency-benchmarks.git] / silo / stats_server.h
diff --git a/silo/stats_server.h b/silo/stats_server.h
new file mode 100644 (file)
index 0000000..238789d
--- /dev/null
@@ -0,0 +1,15 @@
+#pragma once
+
+#include <string>
+#include "stats_common.h"
+
+// serves over unix socket
+class stats_server {
+public:
+  stats_server(const std::string &sockfile);
+  void serve_forever(); // blocks current thread
+private:
+  bool handle_cmd_get_counter_value(const std::string &name, packet &pkt);
+  void serve_client(int fd);
+  std::string sockfile_;
+};