lichao
2021-05-06 7ecd6323ffedbfef92c87c02b2a8680dd53b772c
src/robust.h
@@ -19,6 +19,7 @@
#ifndef ROBUST_Q31RCWYU
#define ROBUST_Q31RCWYU
#include "log.h"
#include <atomic>
#include <chrono>
#include <memory>
@@ -171,7 +172,7 @@
      } else if (!is_alive(Locker(old))) {
         r = static_cast<int>(MetaCas(old, Meta(1, this_locker()))) << 1;
         if (r) {
            printf("captured locker %ld -> %ld, locker = %d\n", int64_t(Locker(old)), int64_t(this_locker()), r);
            LOG_DEBUG() << "captured locker " << int64_t(Locker(old)) << " -> " << int64_t(this_locker()) << ", locker = " << r;
         }
      }
      return r;
@@ -306,7 +307,7 @@
   size_type tail() const { return tail_.load(); }
   bool like_empty() const { return head() == tail() && Empty(buf[head()]); }
   bool like_full() const { return head() == tail() && !Empty(buf[head()]); }
   bool push_back(const Data d, bool try_more = false)
   bool push(const Data d, bool try_more = false)
   {
      bool r = false;
      size_type i = 0;
@@ -319,7 +320,7 @@
      } while (try_more && !r && ++i < capacity);
      return r;
   }
   bool pop_front(Data &d, bool try_more = false)
   bool pop(Data &d, bool try_more = false)
   {
      bool r = false;
      Data cur;