![]() |
XRootD
|
A synchronized queue. More...
#include <XrdClSyncQueue.hh>
Public Member Functions | |
SyncQueue () | |
Constructor. More... | |
~SyncQueue () | |
Destructor. More... | |
void | Clear () |
Clear the queue. More... | |
Item | Get () |
Get the item from the front of the queue. More... | |
bool | IsEmpty () |
Check if the queue is empty. More... | |
void | Put (const Item &item) |
Put the item in the queue. More... | |
Protected Attributes | |
XrdSysMutex | pMutex |
std::queue< Item > | pQueue |
XrdSysSemaphore * | pSem |
A synchronized queue.
Definition at line 32 of file XrdClSyncQueue.hh.
|
inline |
Constructor.
Definition at line 38 of file XrdClSyncQueue.hh.
References XrdCl::SyncQueue< Item >::pSem.
|
inline |
Destructor.
Definition at line 46 of file XrdClSyncQueue.hh.
References XrdCl::SyncQueue< Item >::pSem.
|
inline |
Clear the queue.
Definition at line 81 of file XrdClSyncQueue.hh.
References XrdCl::SyncQueue< Item >::pMutex, XrdCl::SyncQueue< Item >::pQueue, and XrdCl::SyncQueue< Item >::pSem.
Referenced by XrdCl::JobManager::Finalize().
|
inline |
Get the item from the front of the queue.
Definition at line 64 of file XrdClSyncQueue.hh.
References XrdCl::SyncQueue< Item >::pMutex, XrdCl::SyncQueue< Item >::pQueue, XrdCl::SyncQueue< Item >::pSem, and XrdSysSemaphore::Wait().
Referenced by XrdCl::JobManager::RunJobs().
|
inline |
Check if the queue is empty.
Definition at line 93 of file XrdClSyncQueue.hh.
References XrdCl::SyncQueue< Item >::pMutex, and XrdCl::SyncQueue< Item >::pQueue.
|
inline |
Put the item in the queue.
Definition at line 54 of file XrdClSyncQueue.hh.
References XrdCl::SyncQueue< Item >::pMutex, XrdSysSemaphore::Post(), XrdCl::SyncQueue< Item >::pQueue, and XrdCl::SyncQueue< Item >::pSem.
Referenced by XrdCl::JobManager::QueueJob().
|
protected |
Definition at line 101 of file XrdClSyncQueue.hh.
Referenced by XrdCl::SyncQueue< Item >::Clear(), XrdCl::SyncQueue< Item >::Get(), XrdCl::SyncQueue< Item >::IsEmpty(), and XrdCl::SyncQueue< Item >::Put().
|
protected |
Definition at line 100 of file XrdClSyncQueue.hh.
Referenced by XrdCl::SyncQueue< Item >::Clear(), XrdCl::SyncQueue< Item >::Get(), XrdCl::SyncQueue< Item >::IsEmpty(), and XrdCl::SyncQueue< Item >::Put().
|
protected |
Definition at line 102 of file XrdClSyncQueue.hh.
Referenced by XrdCl::SyncQueue< Item >::SyncQueue(), XrdCl::SyncQueue< Item >::~SyncQueue(), XrdCl::SyncQueue< Item >::Clear(), XrdCl::SyncQueue< Item >::Get(), and XrdCl::SyncQueue< Item >::Put().