All sleep calls via std::this_thread
[invirt/third/libt4.git] / paxos.h
diff --git a/paxos.h b/paxos.h
index db18e6c..79924a3 100644 (file)
--- a/paxos.h
+++ b/paxos.h
@@ -14,7 +14,7 @@ using value_t = paxos_protocol::value_t;
 class paxos_change {
     public:
         virtual void paxos_commit(unsigned instance, const value_t & v) = 0;
-        virtual ~paxos_change() {}
+        virtual ~paxos_change();
 };
 
 extern bool isamember(const node_t & m, const nodes_t & nodes);
@@ -22,13 +22,12 @@ extern bool majority(const nodes_t & l1, const nodes_t & l2);
 
 class proposer_acceptor {
     private:
-        mutex proposer_mutex;
-        mutex acceptor_mutex;
+        std::mutex proposer_mutex, acceptor_mutex;
 
         paxos_change *delegate;
         node_t me;
 
-        rpcs pxs{(in_port_t)stoi(me)};
+        rpcs pxs{(in_port_t)std::stoi(me)};
 
         bool break1 = false;
         bool break2 = false;
@@ -42,7 +41,7 @@ class proposer_acceptor {
         prop_t accepted = {0, me};  // number of highest proposal accepted
         value_t accepted_value;     // value of highest proposal accepted
         unsigned instance_h = 0;    // number of the highest instance we have decided
-        map<unsigned,value_t> values;   // vals of each instance
+        std::map<unsigned,value_t> values;   // vals of each instance
 
         friend class log;
         class log l = {this, me};
@@ -66,7 +65,7 @@ class proposer_acceptor {
         unsigned instance() { return instance_h; }
         const value_t & value(unsigned instance) { return values[instance]; }
         string dump() { return l.dump(); }
-        void restore(const string &s) { l.restore(s); l.logread(); }
+        void restore(const string & s) { l.restore(s); l.logread(); }
         rpcs *get_rpcs() { return &pxs; }
 
         bool run(unsigned instance, const nodes_t & cnodes, const value_t & v);