Table of contents
Collapse the table of content
Expand the table of content

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

Den Delimarsky|Last Updated: 8/18/2017
1 Contributor

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)


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.


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.


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

Control.AsyncBuilder Class (F#)

Microsoft.FSharp.Control Namespace (F#)

© 2019 Microsoft