UnsafeRingQueue<T>
A fixed-size circular buffer.
Read time 1 minuteLast updated 12 days ago
Definition
- Type: Struct
- Namespace: Unity.Collections.LowLevel.Unsafe
- Assembly: UnityEngine.ManagedKernelModule
- Implements: INativeDisposable, IDisposable
public struct UnsafeRingQueue<T> : INativeDisposable, IDisposable where T : unmanaged
Fields
Value | Description |
|---|---|
| Allocator | The allocator used to create the internal buffer. |
| Ptr | The internal buffer where the content is stored. |
Static Fields
Value | Description |
|---|---|
| MaxCapacity | The maximum number of elements this type of container can hold. |
Constructors
Constructor | Description |
|---|---|
| UnsafeRingQueue`1(`0*,System.Int32) | Initializes and returns an instance of UnsafeRingQueue which aliasing an existing buffer. |
| UnsafeRingQueue`1(System.Int32,Unity.Collections.AllocatorManager.AllocatorHandle,Unity.Collections.NativeArrayOptions) | Initializes and returns an instance of UnsafeRingQueue. |
Properties
Property | Description |
|---|---|
| Capacity | The number of elements that fit in the internal buffer. |
| IsCreated | Whether this queue has been allocated (and not yet deallocated). |
| IsEmpty | Whether the queue is empty. |
| Length | The number of elements currently in this queue. |
Methods
Method | Description |
|---|---|
| Dequeue | Removes the element from the end of the queue. |
| Dispose | Releases all resources (memory and safety handles). |
| Enqueue | Adds an element at the front of the queue. |
| TryDequeue | Removes the element from the end of the queue. |
| TryEnqueue | Adds an element at the front of the queue. |