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


Метод AsyncBuilder.TryWith<'T> (F#)

Реализует try...with в асинхронных вычислениях.

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

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

// Signature:
member this.TryWith : Async<'T> * (exn -> Async<'T>) -> Async<'T>

// Usage:
asyncBuilder.TryWith (computation, catchHandler)

Параметры

  • computation
    Тип: Async<'T>

    Входное вычисление.

  • catchHandler
    Тип: exn -> Async<'T>

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

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

Асинхронное вычисление, которое выполняет вычисление computation и в случае создания исключения вызывает метод catchHandler.

Заметки

Эта функция создает асинхронное вычисление, которое запускает вычисление computation и возвращает его результат. Если происходит исключение, вызывается метод catchHandler(exn) и выполняется результирующее вычисление.

При выполнении вычисления осуществляется проверка отмены. Наличие данного метода позволяет использовать try...with в синтаксисе вычислительного выражения 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#)