#include <algorithm>
#include <atomic>
#include <cstdint>
#include <cstring>
#include <memory>
#include <system_error>
#include <folly/CPortability.h>
#include <folly/CachelinePadded.h>
#include <folly/IndexedMemPool.h>
#include <folly/Likely.h>
#include <folly/lang/SafeAssert.h>
#include <folly/synchronization/AtomicStruct.h>
#include <folly/synchronization/SaturatingSemaphore.h>
Go to the source code of this file.
#define LIFOSEM_DECLARE_POOL |
( |
|
Atom, |
|
|
|
capacity |
|
) |
| |
Value: template <> \
static Pool* instance =
new Pool((capacity));
\ } \
} \
}
—— Concurrent Priority Queue Implementation ——
static Pool & pool()
Storage for all of the waiter nodes for LifoSem-s that use Atom.
Use this macro to declare the static storage that backs the raw nodes for the specified atomic type
Definition at line 149 of file LifoSem.h.