private void StartOneOperationFromQueue() { IThrottleOperation item = null; lock (this.syncObject) { if (this.operationsQueue.Count > 0) { item = this.operationsQueue[0]; this.operationsQueue.RemoveAt(0); item.OperationComplete += new EventHandler <OperationStateEventArgs>(this.OperationCompleteHandler); this.startOperationQueue.Add(item); } } if (item != null) { item.StartOperation(); } }
/// <summary> /// Method used to start the operation on one item in the queue. /// </summary> private void StartOneOperationFromQueue() { IThrottleOperation operation = null; lock (_syncObject) { if (_operationsQueue.Count > 0) { operation = _operationsQueue[0]; _operationsQueue.RemoveAt(0); operation.OperationComplete += OperationCompleteHandler; _startOperationQueue.Add(operation); } } if (operation != null) { operation.StartOperation(); } }