Freigeben über


AsyncBuilder.TryFinally<'T>-Methode (F#)

Implementiert try...finally in asynchronen Berechnungen.

Namespace/Modulpfad: Microsoft.FSharp.Control

Assembly: FSharp.Core (in FSharp.Core.dll)

// Signature:
member this.TryFinally : Async<'T> * (unit -> unit) -> Async<'T>

// Usage:
asyncBuilder.TryFinally (computation, compensation)

Parameter

  • computation
    Typ: Async<'T>

    Die Eingabeberechnung.

  • compensation
    Typ: unit -> unit

    Die auszuführende Aktion, nachdem die computation abgeschlossen wurde oder eine Ausnahme (einschließlich Abbruch) ausgelöst hat.

Rückgabewert

Eine asynchrone Berechnung, die Berechnung und Kompensierung nachträglich ausführt, oder wenn eine Ausnahme ausgelöst wird.

Hinweise

Erstellt eine asynchrone Berechnung, die computation ausführt.Die Aktion compensation wird ausgeführt, nachdem computation abgeschlossen wurde, unabhängig davon, ob computation ordnungsgemäß oder durch eine Ausnahme beendet wird.Wenn compensation selbst eine Ausnahme auslöst, wird die ursprüngliche Ausnahme verworfen, und die neue Ausnahme ist das Gesamtergebnis der Berechnung.

Beim Ausführen der Berechnung wird eine Abbruchprüfung durchgeführt.Das Vorhandensein dieser Methode ermöglicht die Verwendung von try...finally in der async { ... }-Berechnungsausdrucksyntax.

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.AsyncBuilder-Klasse (F#)

Microsoft.FSharp.Control-Namespace (F#)