public WaitForPDProgressChangedEventArgs(PD packet, int percentage, object token) : base(percentage, token) { _thePD = packet; }
public void sendToAllPlayer(PD pd) { lock (sendAllLock) { foreach (var item in m_clients) { try { item.Value.SocketClient.sendPacket(pd); } catch (System.Exception ex) { #if DEBUG System.Console.WriteLine(ex.StackTrace); #endif } } } }
//\todo approuver et supprimer : étant donné qu'on gère pas les retransmission en cas d'erreur il vaut mieux envoyer directement les packets sans utiliser une file //public void sendPacket(PD packet) //{ // lock (m_queuLock) //On protège la file contre l'écriture et la lecture en même temps // { // m_waitingPackets.Enqueue(packet); // //queuReset.Set(); // } //} //private void sendAll() //{ // while (true) // { // lock (m_queuLock)//On protège la file contre l'écriture et la lecture en même temps // { // if (m_waitingPackets.Count > 0) // { // PD currentSendingPd = m_waitingPackets.Dequeue(); // currentSendingPd.marshal(new BinaryWriter(TheClient.GetStream())); // } // } // //queuReset.WaitOne(); // //queuReset.Reset(); // } //} public void sendPacket(PD packet) { if (packet != null) { send(packet.getBytesData()); } }