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 408 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 410 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 457 of file queue.hpp.

◆ GetSoftMaxSize()

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

Definition at line 455 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 439 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 )
inlinenodiscard

Definition at line 419 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 )
inlinenodiscard

Definition at line 435 of file queue.hpp.

◆ ResumeBlockingOnPush()

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

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

◆ StopBlockingOnPush()

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

Definition at line 444 of file queue.hpp.


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