Exemple #1
0
        // 4. Отправить полученные данные всем клиентам в комнате
        private static void SendData(IAsyncResult ar)
        {
            SocketCoderClient socketCoderClient = (SocketCoderClient)ar.AsyncState;

            byte[] masRecData = socketCoderClient.GetRecievedData(ar);

            if (masRecData.Length < 1)
            {
                socketCoderClient.ReadOnlySocket.Close();
                arrayClient.Remove(socketCoderClient);
                return;
            }
            foreach (SocketCoderClient clnt in arrayClient)
            {
                if (socketCoderClient != clnt)
                {
                    try
                    {
                        clnt.ReadOnlySocket.Send(masRecData);
                    }
                    catch
                    {
                        clnt.ReadOnlySocket.Close();
                        arrayClient.Remove(socketCoderClient);
                        return;
                    }
                }
            }
            socketCoderClient.acceptCallback();
        }