private void clientForServer_EndGameEvent(object sender, EventArgs e) { lock (gameInfoPacketLock) { try { UDPPacketBuffer buff = new UDPPacketBuffer(); buff.Data = gameInfoPacket.ToMinimalByte(); buff.DataLength = gameInfoPacket.ByteCount; gameInfoPacket.RoundNumber = 0; for (int i = 0; i < cliendAdressList.Count; i++) { buff.RemoteEndPoint = cliendAdressList[i]; base.AsyncBeginSend(buff); } } catch (Exception ex) { Diagnostic.NetworkingDiagnostics.Logging.Error("EndGameEvent", ex); } } System.Threading.Thread.Sleep(200); timer.Change(System.Threading.Timeout.Infinite, System.Threading.Timeout.Infinite); cliendAdressList.Clear(); lock (clientPackagesDictionaryLock) { clientPackagesDictionary = new Dictionary<ushort, UDPClientServerCommons.Usefull.Last10Packages>(); } lock (gameInfoPacketLock) { gameInfoPacket = new GameInfoPacket(); } last10 = new Last10(); lock (serverPacketLock) { serverPacket = new ServerPacket(); } }
public Last10Packages() { last10 = new Last10(); packets = new Dictionary<int, UDPClientServerCommons.Interfaces.IPacket>(); }