Server.Network.SendQueue.Dequeue C# (CSharp) Method

Dequeue() public method

public Dequeue ( ) : Gram
return Gram
		public Gram Dequeue() {
			Gram gram = null;

			if ( _pending.Count > 0 ) {
				_pending.Dequeue().Release();

				if ( _pending.Count > 0 ) {
					gram = _pending.Peek();
				}
			}

			return gram;
		}

Usage Example

Example #1
0
        private void Send_Completion(object sender, SocketAsyncEventArgs e)
        {
            Send_Process(e);

            if (m_Disposing)
            {
                return;
            }

            if (m_CoalesceSleep >= 0)
            {
                Thread.Sleep(m_CoalesceSleep);
            }

            SendQueue.Gram gram;

            lock ( m_SendQueue ) {
                gram = m_SendQueue.Dequeue();
            }

            if (gram != null)
            {
                m_SendEventArgs.SetBuffer(gram.Buffer, 0, gram.Length);
                Send_Start();
            }
        }
All Usage Examples Of Server.Network.SendQueue::Dequeue