Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
base class of concurrent_queue More...
#include <_concurrent_queue_impl.h>
Protected Types | |
typedef concurrent_queue_rep< T >::page | page |
Protected Member Functions | |
concurrent_queue_base_v3 () | |
virtual | ~concurrent_queue_base_v3 () |
void | internal_push (const void *src, item_constructor_t construct_item) |
Enqueue item at tail of queue. More... | |
bool | internal_try_pop (void *dst) |
Attempt to dequeue item from queue. More... | |
size_t | internal_size () const |
Get size of queue; result may be invalid if queue is modified concurrently. More... | |
bool | internal_empty () const |
check if the queue is empty; thread safe More... | |
void | internal_finish_clear () |
free any remaining pages More... | |
void | internal_throw_exception () const |
Obsolete. More... | |
void | assign (const concurrent_queue_base_v3 &src, item_constructor_t construct_item) |
copy or move internal representation More... | |
void | internal_swap (concurrent_queue_base_v3 &src) |
swap internal representation More... | |
![]() | |
virtual | ~concurrent_queue_page_allocator () |
Private Types | |
typedef micro_queue< T >::padded_page | padded_page |
typedef micro_queue< T >::item_constructor_t | item_constructor_t |
Private Member Functions | |
virtual page * | allocate_page () __TBB_override |
virtual void | deallocate_page (concurrent_queue_rep_base::page *p) __TBB_override |
virtual void * | allocate_block (size_t n)=0 |
custom allocator More... | |
virtual void | deallocate_block (void *p, size_t n)=0 |
custom de-allocator More... | |
Private Attributes | |
concurrent_queue_rep< T > * | my_rep |
Internal representation. More... | |
Friends | |
struct | concurrent_queue_rep< T > |
class | micro_queue< T > |
class | concurrent_queue_iterator_rep< T > |
class | concurrent_queue_iterator_base_v3< T > |
base class of concurrent_queue
The class implements the interface defined by concurrent_queue_page_allocator and has a pointer to an instance of concurrent_queue_rep.
Definition at line 60 of file _concurrent_queue_impl.h.
|
private |
Definition at line 436 of file _concurrent_queue_impl.h.
|
private |
Definition at line 435 of file _concurrent_queue_impl.h.
|
protected |
Definition at line 432 of file _concurrent_queue_impl.h.
|
protected |
Definition at line 506 of file _concurrent_queue_impl.h.
|
inlineprotectedvirtual |
Definition at line 459 of file _concurrent_queue_impl.h.
|
privatepure virtual |
custom allocator
Implemented in tbb::strict_ppl::concurrent_queue< T, A >.
|
inlineprivatevirtual |
Implements tbb::strict_ppl::internal::concurrent_queue_page_allocator.
Definition at line 438 of file _concurrent_queue_impl.h.
|
protected |
copy or move internal representation
Definition at line 589 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::concurrent_queue< T, A >::concurrent_queue().
|
privatepure virtual |
custom de-allocator
Implemented in tbb::strict_ppl::concurrent_queue< T, A >.
|
inlineprivatevirtual |
Implements tbb::strict_ppl::internal::concurrent_queue_page_allocator.
Definition at line 444 of file _concurrent_queue_impl.h.
|
protected |
check if the queue is empty; thread safe
Definition at line 565 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::concurrent_queue< T, A >::empty().
|
protected |
free any remaining pages
Definition at line 574 of file _concurrent_queue_impl.h.
|
inlineprotected |
Enqueue item at tail of queue.
Definition at line 469 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::concurrent_queue< T, A >::push().
|
protected |
Get size of queue; result may be invalid if queue is modified concurrently.
Definition at line 553 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::concurrent_queue< T, A >::unsafe_size().
|
inlineprotected |
swap internal representation
Definition at line 499 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::concurrent_queue< T, A >::concurrent_queue().
|
inlineprotected |
Obsolete.
Definition at line 490 of file _concurrent_queue_impl.h.
|
protected |
Attempt to dequeue item from queue.
NULL if there was no item to dequeue.
Definition at line 524 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::concurrent_queue< T, A >::try_pop().
|
friend |
Definition at line 429 of file _concurrent_queue_impl.h.
|
friend |
Definition at line 428 of file _concurrent_queue_impl.h.
|
friend |
Definition at line 426 of file _concurrent_queue_impl.h.
|
friend |
Definition at line 427 of file _concurrent_queue_impl.h.
|
private |
Internal representation.
Definition at line 424 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::internal::concurrent_queue_iterator_base_v3< tbb_remove_cv< Value >::type >::advance(), tbb::strict_ppl::internal::micro_queue< Value >::assign(), tbb::strict_ppl::internal::concurrent_queue_base_v3< Value >::assign(), tbb::strict_ppl::internal::concurrent_queue_iterator_rep< Value >::concurrent_queue_iterator_rep(), tbb::strict_ppl::internal::micro_queue< Value >::pop(), and tbb::strict_ppl::internal::micro_queue< Value >::push().