Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Вы можете добавить точность и гибкость в асинхронные приложения с помощью методов и свойств, предоставляемых типом Task . В разделах этого раздела показаны примеры использования CancellationToken и важных Task
методов, таких как Task.WhenAll и Task.WhenAny.
Используя WhenAny
и WhenAll
, вы можете проще запустить несколько задач и ожидать их завершения, отслеживая одну задачу.
WhenAny
возвращает задачу, которая завершается после завершения любой задачи в коллекции.Примеры, которые используются
WhenAny
, см. в разделе "Отмена оставшихся асинхронных задач" после завершения одной задачи (Visual Basic)и запуск нескольких асинхронных задач и их обработка по мере их завершения (Visual Basic).WhenAll
возвращает задачу, которая завершается после завершения всех задач в коллекции.Дополнительные сведения и пример использования
WhenAll
см. в статье "Практическое руководство. Расширение асинхронного пошагового руководства с помощью Task.WhenAll (Visual Basic)".
В этом разделе приведены следующие примеры.
Отмена асинхронных задач после периода времени (Visual Basic)
Отмена оставшихся асинхронных задач после завершения одного (Visual Basic)
Запуск нескольких асинхронных задач и их обработка по мере их завершения (Visual Basic)
Замечание
Для выполнения примеров необходимо установить Visual Studio 2012 или более поздней версии и .NET Framework 4.5 или более поздней версии на компьютере.
Проекты создают пользовательский интерфейс, содержащий кнопку, которая запускает процесс и кнопку, которая его отменяет, как показано на следующем рисунке. Кнопки именуются startButton
и cancelButton
.
Вы можете скачать полные проекты Windows Presentation Foundation (WPF) из документа Образец асинхронной настройки приложения.