AsyncBuilder.Using<'T,'U> Method (F#)

Implements the use and use! keywords in asynchronous computation expressions.

Namespace/Module Path: Microsoft.FSharp.Control

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

// Signature:
member this.Using : 'T * ('T -> Async<'U>) -> Async<'U> (requires 'T :> IDisposable)

// Usage:
asyncBuilder.Using (resource, binder)

Parameters

  • resource
    Type: 'T

    The resource to be used and disposed.

  • binder
    Type: 'T -> Async<'U>

    The function that takes the resource and returns an asynchronous computation.

Return Value

An asynchronous computation that binds and eventually disposes resource.

Remarks

Creates an asynchronous computation that runs binder(resource). The action resource.Dispose() is executed as this computation yields its result or if the asynchronous computation exits by an exception or by cancellation.

A cancellation check is performed when the computation is executed. The existence of this method permits the use of use and use! in the async { ... } computation expression syntax.

Platforms

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Version Information

F# Core Library Versions

Supported in: 2.0, 4.0, Portable

See Also

Reference

Control.AsyncBuilder Class (F#)

Microsoft.FSharp.Control Namespace (F#)

IDisposable