static constexpr uint64_t kReaderShift
folly::Future< bool > wait()
static constexpr uint64_t kReader
std::atomic< uint64_t > valueAndReaderCount
folly::Promise< bool > BoolPromise
—— Concurrent Priority Queue Implementation ——
static size_t controlBlockSize(size_t n)
std::atomic< ControlBlock * > controlBlock_
static BoolPromise * promises(ControlBlock *cb)
ControlBlock * allocateControlBlock()
static constexpr uint64_t kValueMask
void freeControlBlock(ControlBlock *b)