__GNU_PARALLEL::_RESTRICTEDBOUNDEDCONCURRENTQUEUE(3cxx)
Manual name: 3cxx. Title energy: __gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >. Okay bestie, grab your iced coffee, weβre doing concurrency but make it cute π
β¨
β¨ NAME β¨
__gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp > β a double-ended queue of bounded size, allowing lock-free atomic access. push_front() and pop_front() must not be called concurrently to each other, while pop_back() can be called concurrently at all times. empty(), size(), and top() are intentionally not provided. Calling them would not make sense in a concurrent setting. No cap, thatβs the whole vibe π¦
π¦ SYNOPSIS π¦
#include <queue.h>
π Public Member Functions π
_RestrictedBoundedConcurrentQueue (_SequenceIndex __max_size)β Constructor. Not to be called concurrent, of course.~_RestrictedBoundedConcurrentQueue ()β Destructor. Not to be called concurrent, of course.bool pop_back (_Tp &__t)β Pops one element from the queue at the front end. Must not be called concurrently withpop_front().bool pop_front (_Tp &__t)β Pops one element from the queue at the front end. Must not be called concurrently withpop_front().void push_front (const _Tp &__t)β Pushes one element into the queue at the front end. Must not be called concurrently withpop_front().
Yes, pop_back() says βfront endβ in the original too β Iβm preserving the exact tea, not spilling a different one π«π
π Detailed Description π
template<typename _Tp>
class __gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >
Double-ended queue of bounded size, allowing lock-free atomic access. push_front() and pop_front() must not be called concurrently to each other, while pop_back() can be called concurrently at all times. empty(), size(), and top() are intentionally not provided. Calling them would not make sense in a concurrent setting.
πΈ Parameters πΈ
_Tpβ Contained element type.
π Constructor & Destructor Documentation π
π§ Constructor π§
template<typename _Tp > __gnu_parallel::_RestrictedBoundedConcurrentQueue<
_Tp >::_RestrictedBoundedConcurrentQueue (_SequenceIndex __max_size)
[inline]
Constructor. Not to be called concurrent, of course.
Parameters
__max_sizeβ Maximal number of elements to be contained.
References: __gnu_parallel::__encode2().
π¦ Destructor π¦
template<typename _Tp > __gnu_parallel::_RestrictedBoundedConcurrentQueue<
_Tp >::~_RestrictedBoundedConcurrentQueue () [inline]
Destructor. Not to be called concurrent, of course.
π Member Function Documentation π
π pop_back π
template<typename _Tp > bool
__gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >::pop_back (_Tp
& __t) [inline]
Pops one element from the queue at the front end. Must not be called concurrently with pop_front().
References: __gnu_parallel::__compare_and_swap(), __gnu_parallel::__decode2(), and __gnu_parallel::__encode2().
π pop_front π
template<typename _Tp > bool
__gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >::pop_front (_Tp
& __t) [inline]
Pops one element from the queue at the front end. Must not be called concurrently with pop_front().
References: __gnu_parallel::__compare_and_swap(), __gnu_parallel::__decode2(), and __gnu_parallel::__encode2().
π push_front π
template<typename _Tp > void
__gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >::push_front
(const _Tp & __t) [inline]
Pushes one element into the queue at the front end. Must not be called concurrently with pop_front().
References: __gnu_parallel::__decode2(), __gnu_parallel::__encode2(), and __gnu_parallel::__fetch_and_add().
π Author π
Generated automatically by Doxygen for libstdc++ from the source code.
Byeee π«Άπ β footer sign-off: source/version is libstdc++ (that libst... footer energy), and the date is not visible in the supplied footer, bestie πβ¨
π¦ where this page comes from
- debian trixie: libstdc++-12-doc 12.4.0-5
- debian trixie: libstdc++-13-doc 13.3.0-16
- debian trixie: libstdc++-14-doc 14.2.0-19
- ubuntu noble: libstdc++-10-doc 10.5.0-4ubuntu2
- ubuntu noble: libstdc++-10-doc 10.5.0-4ubuntu2.1
- ubuntu noble: libstdc++-11-doc 11.4.0-9ubuntu1
- ubuntu noble: libstdc++-11-doc 11.5.0-1ubuntu1~24.04.1
- ubuntu noble: libstdc++-12-doc 12.3.0-17ubuntu1
- ubuntu noble: libstdc++-12-doc 12.4.0-2ubuntu1~24.04.1
- ubuntu noble: libstdc++-13-doc 13.2.0-23ubuntu4
- ubuntu noble: libstdc++-13-doc 13.3.0-6ubuntu2~24.04.1
- ubuntu noble: libstdc++-14-doc 14-20240412-0ubuntu1
- ubuntu noble: libstdc++-14-doc 14.2.0-4ubuntu2~24.04.1
- ubuntu questing: libstdc++-11-doc 11.5.0-7ubuntu1
- ubuntu questing: libstdc++-11-doc 11.5.0-7ubuntu1.1
- ubuntu questing: libstdc++-12-doc 12.5.0-6ubuntu1
- ubuntu questing: libstdc++-13-doc 13.4.0-4ubuntu1
- ubuntu questing: libstdc++-14-doc 14.3.0-8ubuntu1
- ubuntu questing: libstdc++-15-doc 15.2.0-4ubuntu4
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms