Fine-Tuning Your Async Application (Visual Basic) (Настройка асинхронного приложения (Visual Basic))
Методы и свойства, доступные при использовании типа Task, позволяют сделать приложение более точным и гибким. В подразделах этого раздела приводятся примеры, в которых используются CancellationToken и важные методы Task
, такие как Task.WhenAll и Task.WhenAny.
С помощью WhenAny
и WhenAll
можно легко запускать несколько задач и ожидать их завершения путем наблюдения за одной из них.
WhenAny
возвращает задачу, которая завершается после завершения любой задачи в коллекции.Примеры, которые используются
WhenAny
, см. в разделе "Отмена оставшихся асинхронных задач" после завершения одной задачи (Visual Basic) и запуск нескольких асинхронных задач и их обработка по мере их завершения (Visual Basic).WhenAll
возвращает задачу, которая завершается после завершения всех задач в коллекции.Дополнительные сведения и пример использования
WhenAll
см. в статье "Практическое руководство. Расширение асинхронного пошагового руководства с помощью Task.WhenAll (Visual Basic)".
Этот раздел содержит следующие примеры.
Cancel Async Tasks after a Period of Time (Visual Basic) (Отмена асинхронных задач после определенного периода времени в Visual Basic)
Cancel Remaining Async Tasks after One Is Complete (Visual Basic) (Отмена оставшихся асинхронных задач после завершения одной из них в Visual Basic)
Start Multiple Async Tasks and Process Them As They Complete (Visual Basic) (Запуск нескольких асинхронных задач и их обработка по мере завершения в Visual Basic)
Примечание.
Для выполнения примеров необходимо, чтобы на компьютере были установлены Visual Studio 2012 или более поздняя версия и .NET Framework 4.5 или более поздняя версия.
Проекты создают пользовательский интерфейс, содержащий кнопку, которая запускает процесс, и кнопку, которая его отменяет, как показано на следующем рисунке. Кнопки называются startButton
и cancelButton
.
Скачать полный проект Windows Presentation Foundation (WPF) можно со страницы Пример асинхронности. Тонкая настройка приложения.