Часто, при пинге сервера программа подвисает на 1-2 секунды и выдаёт значение пинга 0 - C#
Формулировка задачи:
Создал программу для проверки пинга. Часто, при пинге сервера программа подвисает на 1-2 секунды и выдаёт значение пинга 0. Есть ли какое-то исключение, которое можно заточить в try catch, что бы программа не зависала?
Решение задачи: «Часто, при пинге сервера программа подвисает на 1-2 секунды и выдаёт значение пинга 0»
textual
Листинг программы
static void DoPing(object o) { PingData data = (PingData)o; try { Ping ping = new Ping(); PingReply pingReply = ping.Send(data.Address); if (pingReply.RoundtripTime <= 70 && pingReply.RoundtripTime >= 1) { data.Label.ForeColor = System.Drawing.Color.Green; } else if (pingReply.RoundtripTime >= 70 && pingReply.RoundtripTime <= 120) { data.Label.ForeColor = System.Drawing.Color.Orange; } else if (pingReply.RoundtripTime >= 120) { data.Label.ForeColor = System.Drawing.Color.Red; } else if (pingReply.RoundtripTime == 0) { data.Label.Text = "Сервер умер :)"; } if (pingReply.RoundtripTime != 0) { data.Label.Text = pingReply.RoundtripTime.ToString(); } } catch (PingException) { data.Label.ForeColor = System.Drawing.Color.Red; data.Label.Text = "Ошибка"; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д