userver: concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide Class Reference
Loading...
Searching...
No Matches
concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide Class Referencefinal

Detailed Description

template<typename T, typename QueuePolicy>
class concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide

Definition at line 348 of file queue.hpp.

Public Member Functions

 SingleProducerSide (GenericQueue &queue, std::size_t capacity)
 
template<typename Token >
bool Push (Token &token, T &&value, engine::Deadline deadline)
 
template<typename Token >
bool PushNoblock (Token &token, T &&value)
 
void OnElementPopped (std::size_t released_capacity)
 
void StopBlockingOnPush ()
 
void ResumeBlockingOnPush ()
 
void SetSoftMaxSize (std::size_t new_capacity)
 
std::size_t GetSoftMaxSize () const noexcept
 
std::size_t GetSizeApproximate () const noexcept
 

Constructor & Destructor Documentation

◆ SingleProducerSide()

template<typename T , typename QueuePolicy >
concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide::SingleProducerSide ( GenericQueue & queue,
std::size_t capacity )
inlineexplicit

Definition at line 350 of file queue.hpp.

Member Function Documentation

◆ GetSizeApproximate()

template<typename T , typename QueuePolicy >
std::size_t concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide::GetSizeApproximate ( ) const
inlinenoexcept

Definition at line 390 of file queue.hpp.

◆ GetSoftMaxSize()

template<typename T , typename QueuePolicy >
std::size_t concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide::GetSoftMaxSize ( ) const
inlinenoexcept

Definition at line 388 of file queue.hpp.

◆ OnElementPopped()

template<typename T , typename QueuePolicy >
void concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide::OnElementPopped ( std::size_t released_capacity)
inline

Definition at line 371 of file queue.hpp.

◆ Push()

template<typename T , typename QueuePolicy >
template<typename Token >
bool concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide::Push ( Token & token,
T && value,
engine::Deadline deadline )
inline

Definition at line 356 of file queue.hpp.

◆ PushNoblock()

template<typename T , typename QueuePolicy >
template<typename Token >
bool concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide::PushNoblock ( Token & token,
T && value )
inline

Definition at line 367 of file queue.hpp.

◆ ResumeBlockingOnPush()

template<typename T , typename QueuePolicy >
void concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide::ResumeBlockingOnPush ( )
inline

Definition at line 381 of file queue.hpp.

◆ SetSoftMaxSize()

template<typename T , typename QueuePolicy >
void concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide::SetSoftMaxSize ( std::size_t new_capacity)
inline

Definition at line 383 of file queue.hpp.

◆ StopBlockingOnPush()

template<typename T , typename QueuePolicy >
void concurrent::GenericQueue< T, QueuePolicy >::SingleProducerSide::StopBlockingOnPush ( )
inline

Definition at line 376 of file queue.hpp.


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