An intrusive lock-free MPSC (multiple producer, single consumer) queue. More...
Public Member Functions | |
| intrusive_mpsc_queue (intrusive_mpsc_queue const &)=delete | |
| intrusive_mpsc_queue & | operator= (intrusive_mpsc_queue const &)=delete |
| bool | empty (void) const noexcept |
| void | push (T &t) noexcept |
| T * | try_pop (void) noexcept |
Public Types | |
| typedef T | value_type |
| typedef value_type const & | const_reference |
| typedef value_type & | reference |
| typedef value_type const * | const_pointer |
| typedef value_type * | pointer |
An intrusive lock-free MPSC (multiple producer, single consumer) queue.
| T | Object type. |
The objects are kept in an lock-free singly linked list in reversed order. Since this is an intrusive queue, T has to inherit from intrusive_mpsc_queue_hook.
1.8.13