- bookworm 12.2.0-14
- testing 12.2.0-14
- unstable 12.3.0-4
- experimental 12.3.0-3~exp1
__gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >(3cxx) | __gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >(3cxx) |
NAME¶
__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.
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 with pop_front(). bool pop_front (_Tp &__t)
Pops one element from the queue at the front end. Must not be called
concurrently with pop_front(). void push_front (const _Tp &__t)
Pushes one element into the queue at the front end. Must not be called
concurrently with pop_front().
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
Constructor & Destructor Documentation¶
template<typename _Tp > __gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >::_RestrictedBoundedConcurrentQueue (_SequenceIndex __max_size) [inline]¶
Constructor. Not to be called concurrent, of course.
Parameters
References __gnu_parallel::__encode2().
template<typename _Tp > __gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >::~_RestrictedBoundedConcurrentQueue () [inline]¶
Destructor. Not to be called concurrent, of course.
Member Function Documentation¶
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().
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().
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().
Author¶
Generated automatically by Doxygen for libstdc++ from the source code.
Tue Jun 13 2023 | libstdc++ |