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 409 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, std::size_t value_size)
 
template<typename Token >
bool PushNoblock (Token &token, T &&value, std::size_t value_size)
 
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 )
inline

Definition at line 411 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 453 of file queue.hpp.

◆ GetSoftMaxSize()

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

Definition at line 451 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 437 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,
std::size_t value_size )
inline

Definition at line 417 of file queue.hpp.

◆ PushNoblock()

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

Definition at line 433 of file queue.hpp.

◆ ResumeBlockingOnPush()

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

Definition at line 444 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 446 of file queue.hpp.

◆ StopBlockingOnPush()

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

Definition at line 442 of file queue.hpp.


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