public void enqueue(CallbackQueueInterface.ICallbackInfo info) { if (info.Callback == null) { return; } lock (_queue) _queue.Add(info); }
public CallbackQueueInterface.ICallbackInfo spliceout(CallbackQueueInterface.ICallbackInfo info) { if (!_queue.Contains(info)) { return(null); } _queue = new ConcurrentQueue <CallbackQueueInterface.ICallbackInfo>(_queue.Except(new[] { info })); return(info); }
public CallbackQueueInterface.ICallbackInfo spliceout(CallbackQueueInterface.ICallbackInfo info) { lock (_queue) { if (!_queue.Contains(info)) { return(null); } _queue.Remove(info); return(info); } }
public void enqueue(CallbackQueueInterface.ICallbackInfo info) { if (info.Callback == null) { return; } lock (_queue) if (!_queue.Contains(info)) { _queue.Add(info); } else { EDB.WriteLine("ADDING A DUPLICATE CALLBACKINFO TO THE QUEUE"); } }
public void enqueue(CallbackQueueInterface.ICallbackInfo info) { if (info.Callback == null) { return; } #if SAFE lock (mut) #endif { if (!_queue.Contains(info)) { _queue.Enqueue(info); _count++; } } }
public CallbackQueueInterface.ICallbackInfo spliceout(CallbackQueueInterface.ICallbackInfo info) { CallbackQueueInterface.ICallbackInfo icb; int stop; #if SAFE lock (mut) #endif { if (!_queue.Contains(info)) { return(null); } stop = Count; _queue = new Queue <CallbackQueueInterface.ICallbackInfo>(_queue.Except(new[] { info })); _count--; return(info); } }