public void NativeMultiQueue_SimpleScenarios() { using (NativeMultiQueue <int> eventQ = new NativeMultiQueue <int>(5)) { for (int connection = 0; connection < 5; connection++) { // Test Add int item = 0; eventQ.Enqueue(connection, 1); eventQ.Enqueue(connection, 1); eventQ.Enqueue(connection, 1); eventQ.Enqueue(connection, 1); eventQ.Enqueue(connection, 1); // Add grows capacity eventQ.Enqueue(connection, 1); // Test Rem Assert.True(eventQ.Dequeue(connection, out item)); Assert.True(eventQ.Dequeue(connection, out item)); Assert.True(eventQ.Dequeue(connection, out item)); Assert.True(eventQ.Dequeue(connection, out item)); Assert.True(eventQ.Dequeue(connection, out item)); // Remove with grown capacity Assert.True(eventQ.Dequeue(connection, out item)); } } }
public void Initialize(int receiveQueueSize) { m_IPCQueue = new NativeMultiQueue <IPCData>(receiveQueueSize); m_FreeList = new NativeQueue <int>(Allocator.Persistent); m_IPCEndPoints = new NativeList <ushort>(1, Allocator.Persistent); QueueSize = receiveQueueSize; }
public void AddRef() { if (m_RefCount == 0) { m_IPCQueue = new NativeMultiQueue <IPCData>(128); m_IPCChannels = new NativeHashMap <ushort, int>(64, Allocator.Persistent); } ++m_RefCount; }