Поделиться через


Метод AsyncBuilder.While (F#)

Реализует ключевое слово while в выражениях асинхронных вычислений.

Пространство имен/путь к модулю: Microsoft.FSharp.Control

Сборка: FSharp.Core (в FSharp.Core.dll)

// Signature:
member this.While : (unit -> bool) * Async<unit> -> Async<unit>

// Usage:
asyncBuilder.While (guard, computation)

Параметры

  • guard
    Тип: unit -> bool

    Функция для определения момента, когда должно быть остановлено выполняемое вычисление computation.

  • computation
    Тип: Async<unit>

    Выполняемая функция. Эквивалент тела выражения while.

Возвращаемое значение

Асинхронное вычисление, результат выполнения которого аналогичен результату цикла while.

Заметки

Создает асинхронное вычисление, которое многократно выполняет вычисление computation, пока guard не примет значение false.

При каждом выполнении вычисления осуществляется проверка отмены. Наличие данного метода позволяет использовать while в синтаксисе вычислительного выражения async { ... }.

Платформы

Windows 7, Windows Vista с пакетом обновления 2 (SP2), Windows XP с пакетом обновления 3 (SP3), Windows XP x64 с пакетом обновления 2 (SP2), Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2), Windows Server 2003 с пакетом обновления 2 (SP2)

Сведения о версии

Среда выполнения F#

Поддерживается в версиях 2.0, 4.0

Silverlight

Поддерживается в версии 3

См. также

Ссылки

Класс Control.AsyncBuilder (F#)

Пространство имен Microsoft.FSharp.Control (F#)