Exemple #1
0
 /// <summary>
 /// 数据包写入器
 /// </summary>
 /// <param name="codeId">消息报的id</param>
 private PacketWriter(ushort codeId)
 {
     buffer = DogBuffer.GetFromPool32K();
     //  先预留2位用于存放消息id
     buffer.Length = ReceiveQueue.PacketLengthSize;
     Write(codeId);
 }
Exemple #2
0
 /// <summary>
 /// 资源释放
 /// </summary>
 private void Release()
 {
     if (buffer != null)
     {
         buffer.Release();
         buffer = null;
     }
 }
Exemple #3
0
        /// <summary>
        /// 设置网络消息码
        /// </summary>
        /// <param name="codeId"></param>
        public void SetNetCode(ushort codeId)
        {
            if (buffer != null)
            {
                buffer.Release();
            }

            buffer = DogBuffer.GetFromPool32K();
            //  先预留2位用于存放消息id
            buffer.Length = ReceiveQueue.PacketLengthSize;
            Write(codeId);
        }
Exemple #4
0
        /// <summary>
        /// 资源释放
        /// </summary>
        public void Dispose(bool t)
        {
            if (!t)
            {
                return;
            }

            if (buffer != null)
            {
                buffer.Release();
                buffer = null;
            }
        }