Это не идеальный ответ для ускорения работы этого кода. Вместо этого это альтернатива для лучшего долгосрочного решения.
TLDR: Сделайте эту проверку в простой асинхронной JS-функции на стороне браузера или используйте ASP-страницу, которая не имеет сессии, и вызовите ее через тот жеПодход async JS.
Более подробное объяснение: я предполагаю, что этот код выполняется на локальном сервере и запускается браузером пользователей, возможно, как включение в «верх» каждого файла ASP-страницы. Вы хотите попытаться удалить любой долго работающий код ASP из сборок страниц, поскольку каждая небольшая задержка обработки снижает воспринимаемую производительность.
В этом случае вы просто проверяете, доступно ли интернет-соединение, и информируете пользователя. Вы можете сделать это с помощью простой JS-функции, встроенной в заголовок каждой страницы, которую вы отправляете в браузер, и избежать необходимости полностью использовать ASP для этой функции. Просто сделайте JS async попытаться получить доступ к интернет-серверу. Если вы получаете 200, то Интернет работает, если 400 или аналогичный, то он не работает.
Если вам абсолютно «нужно» придерживаться ASP, то вы можете поднять эту функцию в отдельный файл ASP и использоватьтот же асинхронный метод JS для его вызова, что делает ASP безсессионным с включением
<%@ ENABLESESSIONSTATE=False %>
в верхней части файла. Запросы для основанных на сеансе ASP-страниц выполняются в последовательной очереди, поэтому отключение без сеанса блокирует этот запрос от блокировки очереди.
Сводка - получите проверку сервера из потока «каждая = страница» ASP, в идеале, извлеките его из ASP вместе и сделайте его простым JS.