AsyncBuilder.TryFinally<'T> 方法 (F#)
實作非同步計算中的 try...finally。
**命名空間/模組路徑:**Microsoft.FSharp.Control
組件:FSharp.Core (在 FSharp.Core.dll 中)
// Signature:
member this.TryFinally : Async<'T> * (unit -> unit) -> Async<'T>
// Usage:
asyncBuilder.TryFinally (computation, compensation)
參數
computation
型別:Async<'T>輸入計算。
-
要在 computation 完成或引發例外狀況 (包括取消) 之後執行的動件。
傳回值
在引發例外狀況時或之後,執行計算和補償的非同步計算。
備註
建立會執行 computation 的非同步計算。動作 compensation 會在 computation 完成之後執行,不論 computation 是正常結束還是因例外狀況而結束。如果 compensation 本身引發例外狀況,則會捨棄原始例外狀況,而新的例外狀況會變成計算的整體結果。
執行計算之後,便會執行取消檢查。如果這個方法存在,則允許將 try...finally 用於 async { ... } 計算運算式語法。
平台
Windows 8 中, Windows 7, Windows Server 2012 上, Windows Server 2008 R2
版本資訊
F# 核心程式庫版本
支援版本:2.0, 4.0,可攜式執行檔 (PE)。