xrootd
Loading...
Searching...
No Matches
Classes | Public Member Functions | Private Attributes | List of all members
XrdEc::sync_queue< Element > Struct Template Reference

#include <XrdEcUtilities.hh>

Classes

struct  wait_interrupted
 

Public Member Functions

 sync_queue ()
 
void enqueue (Element &&element)
 
Element dequeue ()
 
bool dequeue (Element &e)
 
bool empty ()
 
void interrupt ()
 

Private Attributes

std::queue< Element > elements
 
std::mutex mtx
 
std::condition_variable cv
 
std::atomic< bool > interrupted
 

Constructor & Destructor Documentation

◆ sync_queue()

template<typename Element >
XrdEc::sync_queue< Element >::sync_queue ( )
inline

Member Function Documentation

◆ dequeue() [1/2]

template<typename Element >
Element XrdEc::sync_queue< Element >::dequeue ( )
inline

◆ dequeue() [2/2]

template<typename Element >
bool XrdEc::sync_queue< Element >::dequeue ( Element &  e)
inline

◆ empty()

template<typename Element >
bool XrdEc::sync_queue< Element >::empty ( )
inline

◆ enqueue()

template<typename Element >
void XrdEc::sync_queue< Element >::enqueue ( Element &&  element)
inline

◆ interrupt()

template<typename Element >
void XrdEc::sync_queue< Element >::interrupt ( )
inline

Member Data Documentation

◆ cv

template<typename Element >
std::condition_variable XrdEc::sync_queue< Element >::cv
private

◆ elements

template<typename Element >
std::queue<Element> XrdEc::sync_queue< Element >::elements
private

◆ interrupted

template<typename Element >
std::atomic<bool> XrdEc::sync_queue< Element >::interrupted
private

◆ mtx

template<typename Element >
std::mutex XrdEc::sync_queue< Element >::mtx
private

The documentation for this struct was generated from the following file: