.TH "__gnu_parallel::_RestrictedBoundedConcurrentQueue< _Tp >" 3cxx "libstdc++" \" -*- nroff -*- .ad l .nh .SH 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\&. \fCempty()\fP, \fCsize()\fP, and \fCtop()\fP are intentionally not provided\&. Calling them would not make sense in a concurrent setting\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Public Member Functions" .in +1c .ti -1c .RI "\fB_RestrictedBoundedConcurrentQueue\fP (\fB_SequenceIndex\fP __max_size)" .br .RI "Constructor\&. Not to be called concurrent, of course\&. " .ti -1c .RI "\fB~_RestrictedBoundedConcurrentQueue\fP ()" .br .RI "Destructor\&. Not to be called concurrent, of course\&. " .ti -1c .RI "bool \fBpop_back\fP (_Tp &__t)" .br .RI "Pops one element from the queue at the front end\&. Must not be called concurrently with pop_front()\&. " .ti -1c .RI "bool \fBpop_front\fP (_Tp &__t)" .br .RI "Pops one element from the queue at the front end\&. Must not be called concurrently with pop_front()\&. " .ti -1c .RI "void \fBpush_front\fP (const _Tp &__t)" .br .RI "Pushes one element into the queue at the front end\&. Must not be called concurrently with pop_front()\&. " .in -1c .SH "Detailed Description" .PP .SS "template .br 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\&. \fCempty()\fP, \fCsize()\fP, and \fCtop()\fP are intentionally not provided\&. Calling them would not make sense in a concurrent setting\&. .PP \fBParameters\fP .RS 4 \fI_Tp\fP Contained element type\&. .RE .PP .PP Definition at line \fB52\fP of file \fBqueue\&.h\fP\&. .SH "Constructor & Destructor Documentation" .PP .SS "template \fB__gnu_parallel::_RestrictedBoundedConcurrentQueue\fP< _Tp >::_RestrictedBoundedConcurrentQueue (\fB_SequenceIndex\fP __max_size)\fC [inline]\fP" .PP Constructor\&. Not to be called concurrent, of course\&. .PP \fBParameters\fP .RS 4 \fI__max_size\fP Maximal number of elements to be contained\&. .RE .PP .PP Definition at line \fB68\fP of file \fBqueue\&.h\fP\&. .PP References \fB__gnu_parallel::__encode2()\fP\&. .SS "template \fB__gnu_parallel::_RestrictedBoundedConcurrentQueue\fP< _Tp >::~\fB_RestrictedBoundedConcurrentQueue\fP ()\fC [inline]\fP" .PP Destructor\&. Not to be called concurrent, of course\&. .PP Definition at line \fB77\fP of file \fBqueue\&.h\fP\&. .SH "Member Function Documentation" .PP .SS "template bool \fB__gnu_parallel::_RestrictedBoundedConcurrentQueue\fP< _Tp >::pop_back (_Tp & __t)\fC [inline]\fP" .PP Pops one element from the queue at the front end\&. Must not be called concurrently with pop_front()\&. .PP Definition at line \fB127\fP of file \fBqueue\&.h\fP\&. .PP References \fB__gnu_parallel::__compare_and_swap()\fP, \fB__gnu_parallel::__decode2()\fP, and \fB__gnu_parallel::__encode2()\fP\&. .SS "template bool \fB__gnu_parallel::_RestrictedBoundedConcurrentQueue\fP< _Tp >::pop_front (_Tp & __t)\fC [inline]\fP" .PP Pops one element from the queue at the front end\&. Must not be called concurrently with pop_front()\&. .PP Definition at line \fB100\fP of file \fBqueue\&.h\fP\&. .PP References \fB__gnu_parallel::__compare_and_swap()\fP, \fB__gnu_parallel::__decode2()\fP, and \fB__gnu_parallel::__encode2()\fP\&. .SS "template void \fB__gnu_parallel::_RestrictedBoundedConcurrentQueue\fP< _Tp >::push_front (const _Tp & __t)\fC [inline]\fP" .PP Pushes one element into the queue at the front end\&. Must not be called concurrently with pop_front()\&. .PP Definition at line \fB83\fP of file \fBqueue\&.h\fP\&. .PP References \fB__gnu_parallel::__decode2()\fP, \fB__gnu_parallel::__encode2()\fP, and \fB__gnu_parallel::__fetch_and_add()\fP\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.