Пожалуйста, см Антивибрационная мой кодAwait или тайм-аут на асинхронной операции
HttpResponseMessage messge = client.GetAsync("ladders/get/"+ID+").Result;
if (messge.IsSuccessStatusCode)
{
string result = messge.Content.ReadAsStringAsync().Result;
}
Мне нужен этот код не выполнить до «результата» переменная не является нулевым или не более 30 минут. Каждую минуту будет выполняться следующий код до (result! = Null) в течение 30 минут.
Посмотрим, если не получите «результата» значение в течение 30 минут, затем через 30 мин функция будет автоматически остановить & уведомляет пользователя, что значение не найдено. Тем временем пользователь может получить доступ к другой странице.
Пожалуйста, предложите мне, как можно решить этот вопрос .....
Рассмотрите возможность использования таймера здесь. Установите интервал в 1 минуту и отмените таймер, если вы достигнете 30 минут или получите результат. Для ваших опций см. Https://stackoverflow.com/questions/1416803/system-timers-timer-vs-system-threading-timer. Я бы рекомендовал System.Threading.Timer для вашей цели. Также имейте в виду, что события тикового тика могут перекрываться, если ваш обработчик тиков занимает слишком много времени. – Warty
Если мы говорим о веб-разработчике, подумайте о том, чтобы выполнить описанную выше логику с чем-то вроде setTimeout/setInterval, каждый месяц опросив веб-сервер. – Warty