public void EnQueue(T Item) { try { BufferQueue.PushRange(new [] { Item }); } catch (Exception ex) { if (ex != null) { Exception?.Invoke(ex, null); } return; } try { StartQueueProcessing(); } catch (Exception ex) { if (Exception != null) { Exception(ex, null); } } }