|
QuantumLibrary
|
Thread queue for executing IO tasks. More...
#include <quantum_io_queue.h>
Public Types | |
| using | TaskList = std::list< IoTask::Ptr, QueueListAllocator > |
| using | TaskListIter = TaskList::iterator |
Public Types inherited from Bloomberg::quantum::IQueue | |
| enum | QueueType : int { QueueType::Coro, QueueType::IO, QueueType::All } |
| enum | QueueId : int { QueueId::Any = -1, QueueId::Same = -2, QueueId::All = -3 } |
| using | Ptr = std::shared_ptr< IQueue > |
Public Member Functions | |
| IoQueue () | |
| IoQueue (const Configuration &config, std::vector< IoQueue > *sharedIoQueues) | |
| IoQueue (const IoQueue &other) | |
| IoQueue (IoQueue &&other)=default | |
| ~IoQueue () | |
| void | terminate () final |
| Terminates the object. More... | |
| void | pinToCore (int coreId) final |
| void | run () final |
| void | enqueue (ITask::Ptr task) final |
| bool | tryEnqueue (ITask::Ptr task) final |
| ITask::Ptr | dequeue (std::atomic_bool &hint) final |
| ITask::Ptr | tryDequeue (std::atomic_bool &hint) final |
| size_t | size () const final |
| bool | empty () const final |
| IQueueStatistics & | stats () final |
| SpinLock & | getLock () final |
| void | signalEmptyCondition (bool value) final |
| bool | isIdle () const final |
Public Member Functions inherited from Bloomberg::quantum::ITerminate | |
| virtual | ~ITerminate ()=default |
| Virtual destructor. This function is explicitly left empty. More... | |
Thread queue for executing IO tasks.
| using Bloomberg::quantum::IoQueue::TaskList = std::list<IoTask::Ptr, QueueListAllocator> |
| using Bloomberg::quantum::IoQueue::TaskListIter = TaskList::iterator |
|
inline |
|
inline |
| Bloomberg::quantum::IoQueue::IoQueue | ( | const IoQueue & | other | ) |
|
default |
| Bloomberg::quantum::IoQueue::~IoQueue | ( | ) |
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Terminates the object.
Implements Bloomberg::quantum::ITerminate.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.
|
inlinefinalvirtual |
Implements Bloomberg::quantum::IQueue.