Navigation
API > API/Runtime > API/Runtime/Core > API/Runtime/Core/Containers
References
| Module | Core |
| Header | /Engine/Source/Runtime/Core/Public/Containers/MpscQueue.h |
| Include | #include "Containers/MpscQueue.h" |
Syntax
template<typename T, typename AllocatorType>
class TMpscQueue
Remarks
Fast multi-producer/single-consumer unbounded concurrent queue. Based on http://www.1024cores.net/home/lock-free-algorithms/queues/non-intrusive-mpsc-node-based-queue
Constructors
| Type | Name | Description | |
|---|---|---|---|
TMpscQueue () |
|||
TMpscQueue
(
TMpscQueue&& |
|||
TMpscQueue
(
const TMpscQueue& |
Destructors
| Type | Name | Description | |
|---|---|---|---|
~TMpscQueue () |
Functions
| Type | Name | Description | |
|---|---|---|---|
| TOptional< ElementType > | Dequeue () |
||
| bool | Dequeue
(
ElementType& OutElem |
||
| void | Enqueue
(
ArgTypes&&... Args |
||
| bool | IsEmpty () |
||
| ElementType * | Peek () |
As there can be only one consumer, a consumer can safely "peek" the tail of the queue. |
Operators
| Type | Name | Description | |
|---|---|---|---|
| TMpscQueue & | operator=
(
const TMpscQueue& |
||
| TMpscQueue & | operator=
(
TMpscQueue&& |
Typedefs
| Name | Description |
|---|---|
| ElementType |