Example #1
0
 /// <summary>
 /// 发送消息
 /// </summary>
 /// <param name="buffer"></param>
 /// <returns></returns>
 public override bool PushDataIntoLine(byte[] buffer)
 {
     if (IsAvailable)
     {
         lock (SendLine)
         {
             SendLine.Enqueue(buffer);
             Monitor.PulseAll(SendLine);
         }
         return(true);
     }
     return(false);
 }
Example #2
0
        public override bool PushDataIntoLine(byte[] buffer)
        {
            bool flag = false;

            lock (SendLine)
            {
                if (SendAvailable)
                {
                    SendAvailable = false;
                    flag          = true;
                }
                else
                {
                    SendLine.Enqueue(buffer);
                }
            }

            if (flag)
            {
                Send(buffer);
            }
            return(IsAvailable);
        }