Freigeben über


Async.FromBeginEnd<'Arg1,'Arg2,'Arg3,'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 * '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)

Parameter

  • arg1
    Typ: 'Arg1

    Das erste Argument für den Vorgang.

  • arg2
    Typ: 'Arg2

    Das zweite Argument für den Vorgang.

  • arg3
    Typ: 'Arg3

    Das dritte Argument für den Vorgang.

  • beginAction
    Typ: 'Arg1 * 'Arg2 * 'Arg3 * AsyncCallback * obj -> IAsyncResult

    Die Funktion, die einen herkömmlichen asynchronen CLI-Vorgang einleitet.

  • endAction
    Typ: IAsyncResult -> 'T

    Die 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 drei Argumenten qualifiziert wird.Beispielsweise erstellt der folgende Code eine asynchrone Berechnung für einen Webdienstaufruf.

Async.FromBeginEnd(arg1,arg2,arg3,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 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Versionsinformationen

F#-Kern-Bibliotheks-Versionen

Unterstützt in: 2,0, 4,0, portablen

Siehe auch

Referenz

Control.Async-Klasse (F#)

Microsoft.FSharp.Control-Namespace (F#)