Async.FromBeginEnd<'Arg1,'T>-Methode (F#)
Erstellt eine asynchrone Berechnung mit paarweisen Begin/End-Aktionen in dem Format, das in CLI-APIs verwendet wird.
Namespace/Modulpfad: 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)
Parameter
arg
Typ: 'Arg1Das Argument für den Vorgang.
beginAction
Typ: 'Arg1 * AsyncCallback * obj -> IAsyncResultDie Funktion, die einen herkömmlichen asynchronen CLI-Vorgang einleitet.
endAction
Typ: IAsyncResult -> 'TDie Funktion, die einen herkömmlichen asynchronen CLI-Vorgang abschließt.
cancelAction
Typ: (unit -> unit)Eine optionale Funktion, die ausgeführt wird, wenn ein Abbruch angefordert wird.
Rückgabewert
Eine asynchrone Berechnung, die die gegebenen Begin/End-Funktionen umschließt.
Hinweise
Diese Überladung sollte verwendet werden, wenn der Vorgang von einem Argument qualifiziert wird. Sie können beispielsweise eine asynchrone Berechnung für einen Webdienstaufruf mit dem folgenden Code erstellen.
Async.FromBeginEnd(place,ws.BeginGetWeather,ws.EndGetWeather)
Wenn die Berechnung ausgeführt wird, wird beginFunc mit einem Rückruf ausgeführt, der die Fortsetzung der Berechnung darstellt. Beim Aufrufen des Rückrufs wird das Gesamtergebnis mit endFunc abgerufen.
Die Berechnung reagiert auf einen Abbruch, während sie auf den Abschluss der Operation wartet. Wenn ein Abbruch auftritt und cancelAction angegeben ist, wird diese Aktion ausgeführt, und die Berechnung wartet weiter auf den Abschluss der Operation. Wenn cancelAction nicht angegeben ist, dann führt das Auftreten eines Abbruchs zum sofortigen Ende der Berechnung. Nachfolgende Aufrufe des Rückrufs werden ignoriert.
Ein Beispiel finden Sie unter Async.FromBeginEnd<'T>-Methode (F#).
Plattformen
Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2
Versionsinformationen
F#-Runtime
Unterstützt in: 2.0, 4.0
Silverlight
Unterstützt in: 3