Я создаю поток, который запускает UDP-клиент, который получает сообщение, после того, как он получает сообщение, я хочу закрыть UDP-клиент и затем завершить поток, но я не знаю, как завершить поток, так как "Receive" всегда работает, пока не получит ответ.
Это мой код:
private void RecieveChallenge()
{
UdpClient client = new UdpClient(26000);
IPEndPoint remoteIp = new IPEndPoint(IPAddress.Any, 0);
Byte[] receivedBytes = client.Receive(ref remoteIp);
string ipAddress = Encoding.ASCII.GetString(receivedBytes);
}
Важной строкой является client.Receive (ref remoteIp);
Вот как я начинаю свою тему:
Thread recieveChallengeThread = new Thread(new ThreadStart(RecieveChallenge));
recieveDataThread.Start();