Метод Async.FromBeginEnd<'Arg1,'Arg2,'Arg3,'T> (F#)
Создает асинхронное вычисление в виде пары действий Begin/End в стиле, используемом в API-интерфейсах инфраструктуры CLI.
Пространство имен/путь к модулю: Microsoft.FSharp.Control
Сборка: FSharp.Core (в FSharp.Core.dll)
// Signature:
static member FromBeginEnd : 'Arg1 * 'Arg2 * 'Arg3 * ('Arg1 * 'Arg2 * 'Arg3 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
// Usage:
Async.FromBeginEnd (arg1, arg2, arg3, beginAction, endAction)
Async.FromBeginEnd (arg1, arg2, arg3, beginAction, endAction, cancelAction = cancelAction)
Параметры
arg1
Тип: 'Arg1Первый аргумент для данной операции.
arg2
Тип: 'Arg2Второй аргумент для данной операции.
arg3
Тип: 'Arg3Третий аргумент для данной операции.
beginAction
Тип: 'Arg1 * 'Arg2 * 'Arg3 * AsyncCallback * obj -> IAsyncResultФункция, инициирующая традиционную асинхронную операцию CLI.
endAction
Тип: IAsyncResult -> 'TФункция, завершающая традиционную асинхронную операцию CLI.
cancelAction
Тип: (unit -> unit)Необязательная функция, выполняемая при запросе отмены.
Возвращаемое значение
Асинхронное вычисление, заключающее в оболочку заданные функции Begin/End.
Заметки
Эту перегрузку следует использовать, если операция определяется тремя аргументами. Например, следующий код создает асинхронное вычисление для вызова веб-службы.
Async.FromBeginEnd(arg1,arg2,arg3,ws.BeginGetWeather,ws.EndGetWeather)
При запуске вычисления выполняется функция beginFunc с обратным вызовом, который представляет продолжение вычисления. При использовании обратного вызова окончательный результат получается с помощью функции endFunc.
Вычисление будет реагировать на отмену, ожидая завершения операции. Если произошла отмена и указано действие cancelAction, это действие выполняется, и вычисление продолжает ожидать завершения операции. Если действие cancelAction не указано, отмена вызывает немедленное прекращение вычисления, и последующие вызовы функции обратного вызова игнорируются.
Пример см. в разделе Async.FromBeginEnd<'T> - метод (F#).
Платформы
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