|
Arduino DLNA Server
|
A simple single producer, single consumer lock free queue. More...
#include <QueueLockFree.h>

Classes | |
| struct | Node |
| QueueLockFree Node. More... | |
Public Member Functions | |
| QueueLockFree (size_t capacity, Allocator &allocator=DefaultAllocator) | |
| ~QueueLockFree () | |
| void | setAllocator (Allocator &allocator) |
| void | resize (size_t capacity) |
| size_t | capacity () const |
| size_t | size () const |
| bool | enqueue (T &&data) |
| bool | enqueue (T &data) |
| bool | dequeue (const T &&data) |
| bool | dequeue (T &result) |
| void | clear () |
Protected Attributes | |
| Node * | p_node |
| size_t | capacity_mask |
| size_t | capacity_value |
| std::atomic< size_t > | tail_pos |
| std::atomic< size_t > | head_pos |
| Vector< Node > | vector |
A simple single producer, single consumer lock free queue.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |