KirillHelm
@KirillHelm

Как определить доступ к сайту C#?

Есть приложение, что загружает интернет страницу. Перед тем как отобразить её с интернета, определяет доступ к странице, если она не загружается, то открывает её из сохранённой ранее локальной копии.
Вот функция что это делает:
static public bool InternetConectionExists(string URL)
{            
    IPStatus status = IPStatus.Unknown;
    try
    {
        status = new Ping().Send(URL).Status;
    }
    catch { }
    if (status == IPStatus.Success)
    {
        return true;
    }
    else
    {
        return false;
    }
}

Функция была взята и собрана франкенштейном с форумов просто что бы была на первое время, теперь стоит вопрос скорости определения доступа к странице.
Может кто посоветовать более быстрый способ определения доступа к странице? При наличии интернет она летает, но при его отсутствии она грузить программу на секунд 10
.

Я вижу выход либо пускать её в параллельном потоке, но как-то не очень хочется, во-первых так как незнакомая тема и не понятно как делать, во-вторых хочется что бы сходу определялось и не затрачивалось много времени.
  • Вопрос задан
  • 731 просмотр
Решения вопроса 1
GavriKos
@GavriKos
В любом случае - все операции с интернетами - только в параллельном потоке. И никак иначе. Хочется-не хочется - это правильно.

По ускорению - можно поискать системные какие то методы наличия подключения. Типо если подключения нет вообще - то и пинговать нечего.

А так ускорить сам пинг - по сути никак - а вдруг сервер отвечает но мееедлееенно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы