public static SeqId_Generator Instance()
 {
     if (theSingleton == null)
     {
         theSingleton = new SeqId_Generator();
     }
     return(theSingleton);
 }
        /// <summary>
        /// 发送消息
        /// </summary>
        /// <param name="eKey">事件类型</param>
        /// <param name="Msg_Category">消息类型</param>
        /// <param name="tBody">消息内容</param>
        /// <returns>客户端消息</returns>
        public CSocketData SocketSend(CEnum.ServiceKey eKey, CEnum.Msg_Category eCategory, CEnum.Message_Body[] tBody)
        {
            try
            {
                int             iMsgLength = 0;                         //消息长度
                byte[]          bMsg       = null;
                TLV_Structure[] tMsg       = null;

                if (tBody != null)
                {
                    iMsgLength = tBody.GetLength(0);
                    tMsg       = new TLV_Structure[iMsgLength];
                    for (int i = 0; i < iMsgLength; i++)
                    {
                        bMsg    = TLV_Structure.ValueToByteArray(tBody[i].eTag, tBody[i].oContent);
                        tMsg[i] = new TLV_Structure(tBody[i].eName, (uint)bMsg.GetLength(0), bMsg);
                    }
                }
                else
                {
                    string strSendMsg = "Get List";
                    iMsgLength = 1;
                    tMsg       = new TLV_Structure[1];
                    bMsg       = System.Text.Encoding.Default.GetBytes(strSendMsg);
                    tMsg[0]    = new TLV_Structure(CEnum.TagName.Connect_Msg, (uint)bMsg.GetLength(0), bMsg);
                }

                Packet_Body body = new Packet_Body(tMsg, (uint)iMsgLength);
                Packet_Head head = new Packet_Head(SeqId_Generator.Instance().GetNewSeqID(), eCategory, eKey, body.m_uiBodyLen);

                CSocketData m_Return = new CSocketData(new Packet(head, body));
                return(m_Return);
            }
            catch (Exception e)
            {
                CEnum.TLogData tLogData = new CEnum.TLogData();

                tLogData.iSort        = 5;
                tLogData.strDescribe  = "构造Socket数据包失败!";
                tLogData.strException = e.Message;

                throw new Exception("发送数据异常!");
            }
        }