public C_待机事件器(byte[] zData, IPEndPoint z地址, bool z是否Udp) { o_Data = zData; o_在线时间 = C_Toot.S_Get时间搓int(); o_是否Udp = z是否Udp; m_IP o_地址 = new m_IP(z地址.ToString()); if (o_待机事件集合.ContainsKey(o_地址) == false) { o_待机事件集合[o_地址] = new List <C_待机事件器>(); } o_待机事件集合[o_地址].Add(this); }
public void S_发送死亡消息(m_IP z地址) { if (o_是否Udp == false) { } else { switch (o_Data[0]) { case 1: C_Serv客户端 z第1Server = C_LinkServer.ooo.o_服务器列表[0]; C_LinkServer.ooo.o_Udp.S_发送消息(1, z第1Server.o_通信器.o_IP端口.O_IP, z地址.O_String); //zIP地址------- break; } } }
public static void S_解除待机(m_IP z地址, byte z消息类型, bool z是否Udp) { if (o_待机事件集合.ContainsKey(z地址)) { List <C_待机事件器> nn = o_待机事件集合[z地址]; nn = nn.Where(n => { return(n.o_Data[0] == z消息类型 && n.o_是否Udp == z是否Udp); }).ToList(); for (int i = 0; i < nn.Count; i++) { o_待机事件集合[z地址].Remove(nn[0]); } if (o_待机事件集合[z地址].Count == 0) { o_待机事件集合.Remove(z地址); } } }