w->center.init(InitEventNumber, i, type);
workers.push_back(w);
}
- cct->register_fork_watcher(this);
}
void NetworkStack::start()
}
};
-class NetworkStack : public CephContext::ForkWatcher {
+class NetworkStack {
std::string type;
unsigned num_workers = 0;
ceph::spinlock pool_spin;
public:
NetworkStack(const NetworkStack &) = delete;
NetworkStack& operator=(const NetworkStack &) = delete;
- ~NetworkStack() override {
+ virtual ~NetworkStack() {
for (auto &&w : workers)
delete w;
}
virtual void spawn_worker(unsigned i, std::function<void ()> &&) = 0;
virtual void join_worker(unsigned i) = 0;
- void handle_pre_fork() override {
- stop();
- }
-
- void handle_post_fork() override {
- start();
- }
-
virtual bool is_ready() { return true; };
virtual void ready() { };
};