示例#1
0
        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();
            }
        }