Async.FromBeginEnd<'Arg1,'Arg2,'Arg3,'T> (Método de F#)
Crea un cálculo asincrónico en términos de un par de acciones Begin/End con el estilo usado en las API de CLI.
Espacio de nombres/Ruta de acceso del módulo: Microsoft.FSharp.Control
Ensamblado: FSharp.Core (en 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)
Parámetros
arg1
Tipo: 'Arg1Primer argumento de la operación.
arg2
Tipo: 'Arg2Segundo argumento de la operación.
arg3
Tipo: 'Arg3Tercer argumento de la operación.
beginAction
Tipo: 'Arg1 * 'Arg2 * 'Arg3 * AsyncCallback * obj -> IAsyncResultFunción que inicia una operación asincrónica tradicional de CLI.
endAction
Tipo: IAsyncResult -> 'TFunción que completa una operación asincrónica tradicional de CLI.
cancelAction
Tipo: (unit -> unit)Función opcional que se ejecuta cuando se solicita una cancelación.
Valor devuelto
Cálculo asincrónico que encapsula las funciones Begin/End especificadas.
Comentarios
Esta sobrecarga debe usarse si hay tres argumentos que califican la operación. Por ejemplo, el código siguiente crea un cálculo asincrónico para una llamada al servicio Web.
Async.FromBeginEnd(arg1,arg2,arg3,ws.BeginGetWeather,ws.EndGetWeather)
Cuando se ejecuta el cálculo, se ejecuta beginFunc, con una devolución de llamada que representa la continuación del cálculo. Cuando se invoca la devolución de llamada, se captura el resultado general mediante endFunc.
El cálculo responderá a la cancelación mientras espera a que se complete la operación. Si se produce una cancelación y se ha especificado cancelAction, se ejecuta y el cálculo continúa esperando a que se complete la operación. Si no se especifica cancelAction, la cancelación hace que el cálculo se detenga inmediatamente y se omiten las siguientes invocaciones de la devolución de llamada.
Para obtener un ejemplo, vea Async.FromBeginEnd<'T> (Método de F#).
Plataformas
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Información de versiones
Versiones de la biblioteca básica de F#
Se admite en: 2.0, 4.0, portables