Metodo Async.FromBeginEnd<'Arg1,'T> (F#)
Crea un calcolo asincrono in termini di coppia di azioni Begin/End nello stile utilizzato nelle API CLI.
Percorso di spazio dei nomi/modulo: Microsoft.FSharp.Control
Assembly: FSharp.Core (in FSharp.Core.dll)
// Signature:
static member FromBeginEnd : 'Arg1 * ('Arg1 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
// Usage:
Async.FromBeginEnd (arg, beginAction, endAction)
Async.FromBeginEnd (arg, beginAction, endAction, cancelAction = cancelAction)
Parametri
arg
Tipo: 'Arg1Argomento per l'operazione.
beginAction
Tipo: 'Arg1 * AsyncCallback * obj -> IAsyncResultFunzione che inizia un'operazione asincrona CLI tradizionale.
endAction
Tipo: IAsyncResult -> 'TFunzione che completa un'operazione asincrona CLI tradizionale.
cancelAction
Tipo: (unit -> unit)Funzione facoltativa da eseguire quando viene richiesto un anNullamento.
Valore restituito
Calcolo asincrono che esegue il wrapping delle funzioni Begin/End specificate.
Note
Questo overload deve essere utilizzato se l'operazione viene qualificata da un argomento.Ad esempio, è possibile creare un calcolo asincrono per una chiamata al servizio Web con il seguente codice.
Async.FromBeginEnd(place,ws.BeginGetWeather,ws.EndGetWeather)
In fase di esecuzione del calcolo, beginFunc viene eseguito con un callback che rappresenta la continuazione del calcolo.Quando il callback viene richiamato, il risultato complessivo viene recuperato tramite endFunc.
Il calcolo risponderà alla richiesta di anNullamento durante l'attesa per il completamento dell'operazione.Se si verifica un annullamento ed è stato specificato cancelAction, tale azione verrà eseguita e il calcolo continuerà ad attendere il completamento dell'operazione.Se cancelAction non è stato specificato, l'annullamento determinerà l'arresto immediato del calcolo e le chiamate successive del callback verranno ignorate.
Per un esempio, vedere il metodo Async.FromBeginEnd<'T> Method (F#).
Piattaforme
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Informazioni sulla versione
Versioni della libreria di base F#
Supportato in: 2,0, 4,0, portabile