public void Enque(T newVar) { QueueLimit.WaitOne(); lock (CurrLock) { LocalQueue.Enqueue(newVar); } }
public T Deque() { T returnValue = default(T); if (LocalQueue.Count > 0) { lock (CurrLock) { returnValue = LocalQueue.Dequeue(); QueueLimit.Release(); } } return(returnValue); }