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 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2

Version Information

F# Runtime

Supported in: 2.0, 4.0

Silverlight

Supported in: 3

See Also

Reference

Control.AsyncBuilder Class (F#)

Microsoft.FSharp.Control Namespace (F#)

IDisposable