Example #1
0
 private void ReceiveFromCallback(IAsyncResult ar)
 {
     try
     {
         int count = clientSocket.EndReceiveFrom(ar, ref remoteEP);
         OnAsyncReceive?.Invoke(udpAsyncReceive, count);
         clientSocket.BeginReceiveFrom(udpAsyncReceive.Buffer, udpAsyncReceive.Offset, udpAsyncReceive.Size, SocketFlags.None, ref remoteEP, ReceiveFromCallback, null);
     }
     catch
     {
         Disconnect();
     }
 }
Example #2
0
 private void ReceiveFromUdp()
 {
     while (true)
     {
         try
         {
             int count = serverSocket.ReceiveFrom(udpAsyncReceive.Buffer, udpAsyncReceive.Offset, udpAsyncReceive.Size, SocketFlags.None, ref remoteEP);
             if (count > 0 && !clientDict.ContainsKey(remoteEP))
             {
                 Client client = new Client(serverSocket, remoteEP);
                 AddClient(client);
             }
             OnAsyncReceive?.Invoke(remoteEP, udpAsyncReceive, count);
         }
         catch { }
     }
 }