#c_sharp #async_await
using System.Threading.Tasks;
private async Task PageLoad(int TimeOut)
{
TaskCompletionSource PageLoaded = null;
PageLoaded = new TaskCompletionSource();
int TimeElapsed = 0;
_webBrowser.DocumentCompleted += (s, e) =>
{
if (_webBrowser.ReadyState != WebBrowserReadyState.Complete) return;
if (PageLoaded.Task.IsCompleted) return; PageLoaded.SetResult(true);
};
while (PageLoaded.Task.Status != TaskStatus.RanToCompletion)
{
TimeElapsed++;
if (TimeElapsed >= TimeOut * 100) PageLoaded.TrySetResult(true);
await Task.Delay(10);
}
}
Почему VS пишет что Task не содержит определение для Dеlay? Вроде для ее работы нужна
только System.Threading.Tasks или опять что-то поменялось?
Ответы
Ответ 1
Task.Delay доступен с версии .NET Framework 4.5. Есть аналог для .NET Framework 4 в реализации Microsoft Async использовать так: await TaskEx.Delay(1000);
Комментариев нет:
Отправить комментарий