コード例 #1
0
ファイル: AsyncQueue.cs プロジェクト: rahulyhg/cms-cli
        public void EndDequeue()
        {
            if (isDequeueing)
            {
                lock (queueLock)
                {
                    queue.Dequeue();

                    isDequeueing = false;
                }
            }
        }
コード例 #2
0
ファイル: AsyncQueue.cs プロジェクト: rahulyhg/cms-cli
        public T BeginDequeue()
        {
            if (!isDequeueing)
            {
                lock (queueLock)
                {
                    if (queue.Count > 0)
                    {
                        isDequeueing = true;

                        return(queue.Peek());
                    }
                }
            }

            return(null);
        }
コード例 #3
0
ファイル: AsyncQueue.cs プロジェクト: rahulyhg/cms-cli
 public void CancelDequeue()
 {
     isDequeueing = false;
 }