Esempio n. 1
0
        private List <UdpRequestBase> GetSendData()
        {
            try
            {
                lock (requestQueue)
                {
                    if (requestQueue.Count > 0)
                    {
                        List <UdpRequestBase> list = new List <UdpRequestBase>();
                        list.AddRange(requestQueue);

                        //Udp数据包没有必要保留,发送了就删除
                        requestQueue.Clear();

                        return(list);
                    }
                }
            }
            catch (NullReferenceException e)
            {
                LogAgent.LogWarning("udp发送对列已经销毁" + e.ToString() + "\r\n");
            }
            return(null);
        }
Esempio n. 2
0
        public void AddMessage(TcpRequestBase req)
        {
            string tcpId;

            lock (clientDic)
            {
                if (!clientDic.TryGetValue(req.ClientId, out tcpId))
                {
                    LogAgent.LogWarning("tcp客户端不存在1 clientId = " + req.ClientId + "\r\n");
                    return;
                }
            }
            ClientWithTcp client;

            lock (tmpClientDic)
            {
                if (!tmpClientDic.TryGetValue(tcpId, out client))
                {
                    LogAgent.LogWarning("tcp客户端不存在2 clientId = " + req.ClientId + "\r\n");
                    return;
                }
            }
            client.AddReqPackage(req);
        }