Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
representation of concurrent_queue_base More...
#include <_concurrent_queue_impl.h>
Public Member Functions | |
micro_queue< T > & | choose (ticket k) |
![]() | |
no_copy (const no_copy &)=delete | |
no_copy ()=default | |
Static Public Member Functions | |
static size_t | index (ticket k) |
Map ticket to an array index. More... | |
Public Attributes | |
micro_queue< T > | array [n_queue] |
![]() | |
atomic< ticket > | head_counter |
char | pad1 [NFS_MaxLineSize-sizeof(atomic< ticket >)] |
atomic< ticket > | tail_counter |
char | pad2 [NFS_MaxLineSize-sizeof(atomic< ticket >)] |
size_t | items_per_page |
Always a power of 2. More... | |
size_t | item_size |
Size of an item. More... | |
atomic< size_t > | n_invalid_entries |
number of invalid entries in the queue More... | |
char | pad3 [NFS_MaxLineSize-sizeof(size_t) -sizeof(size_t) -sizeof(atomic< size_t >)] |
Additional Inherited Members | |
![]() | |
static const size_t | n_queue = 8 |
![]() | |
static const size_t | phi = 3 |
Approximately n_queue/golden ratio. More... | |
representation of concurrent_queue_base
the class inherits from concurrent_queue_rep_base and defines an array of micro_queue<T>'s
Definition at line 61 of file _concurrent_queue_impl.h.
|
inline |
Definition at line 409 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::internal::concurrent_queue_base_v3< Value >::internal_push(), and tbb::strict_ppl::internal::concurrent_queue_base_v3< Value >::internal_try_pop().
|
inlinestatic |
Map ticket to an array index.
Definition at line 405 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::internal::concurrent_queue_iterator_base_v3< tbb_remove_cv< Value >::type >::advance(), and tbb::strict_ppl::internal::concurrent_queue_iterator_rep< Value >::get_item().
micro_queue<T> tbb::strict_ppl::internal::concurrent_queue_rep< T >::array[n_queue] |
Definition at line 402 of file _concurrent_queue_impl.h.
Referenced by tbb::strict_ppl::internal::concurrent_queue_base_v3< Value >::assign(), tbb::strict_ppl::internal::concurrent_queue_base_v3< Value >::internal_finish_clear(), and tbb::strict_ppl::internal::concurrent_queue_base_v3< Value >::~concurrent_queue_base_v3().