Control.Async 类 (F#)
包含可创建和操作异步计算的成员。 Control.Async 是一个静态类。
命名空间/模块路径: Microsoft.FSharp.Control
程序集:FSharp.Core(在 FSharp.Core.dll 中)
[<Sealed>]
type Async =
class
static member AsBeginEnd : ('Arg -> Async<'T>) -> ('Arg * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * (IAsyncResult -> unit)
static member AwaitEvent : IEvent<'Del,'T> * ?(unit -> unit) -> Async<'T>
static member AwaitIAsyncResult : IAsyncResult * ?int -> Async<bool>
static member AwaitTask : Task<'T> -> Async<'T>
static member AwaitWaitHandle : WaitHandle * ?int -> Async<bool>
static member CancelDefaultToken : unit -> unit
static member Catch : Async<'T> -> Async<Choice<'T,exn>>
static member FromBeginEnd : 'Arg1 * 'Arg2 * 'Arg3 * ('Arg1 * 'Arg2 * 'Arg3 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
static member FromBeginEnd : 'Arg1 * 'Arg2 * ('Arg1 * 'Arg2 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
static member FromBeginEnd : 'Arg1 * ('Arg1 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
static member FromBeginEnd : (AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
static member FromContinuations : (('T -> unit) * (exn -> unit) * (OperationCanceledException -> unit) -> unit) -> Async<'T>
static member Ignore : Async<'T> -> Async<unit>
static member OnCancel : (unit -> unit) -> Async<IDisposable>
static member Parallel : seq<Async<'T>> -> Async<'T []>
static member RunSynchronously : Async<'T> * ?int * ?CancellationToken -> 'T
static member Sleep : int -> Async<unit>
static member Start : Async<unit> * ?CancellationToken -> unit
static member StartAsTask : Async<'T> * ?TaskCreationOptions * ?CancellationToken -> Task<'T>
static member StartChild : Async<'T> * ?int -> Async<Async<'T>>
static member StartChildAsTask : Async<'T> * ?TaskCreationOptions -> Async<Task<'T>>
static member StartImmediate : Async<unit> * ?CancellationToken -> unit
static member StartWithContinuations : Async<'T> * ('T -> unit) * (exn -> unit) * (OperationCanceledException -> unit) * ?CancellationToken -> unit
static member SwitchToContext : SynchronizationContext -> Async<unit>
static member SwitchToNewThread : unit -> Async<unit>
static member SwitchToThreadPool : unit -> Async<unit>
static member TryCancelled : Async<'T> * (OperationCanceledException -> unit) -> Async<'T>
static member CancellationToken : Async<CancellationToken>
static member DefaultCancellationToken : CancellationToken
end
备注
此类型在编译的程序集中名为 FSharpAsync。 如果从 F# 以外的 .NET 语言中访问类型,或通过反射访问类型,请使用此名称。
有关异步工作流的概述,请参见异步工作流 (F#)。
静态成员
成员 |
说明 |
---|---|
创建三个函数,这些函数可用于实现提供的异步计算的 .NET Framework 异步编程模型 (APM)。 |
|
创建一个异步计算,该异步计算通过将一个处理程序添加到 .NET Framework 事件来等待对此事件的单个调用。 完成或取消计算后,将从此事件中移除该处理程序。 |
|
创建等待提供的 IAsyncResult 的异步计算。 |
|
返回一个等待给定任务完成并返回其结果的异步计算。 |
|
创建等待提供的 WaitHandle 的异步计算。 |
|
为最近的异步计算集合引发取消条件,这些异步计算是在不使用任何特定 CancellationToken 的情况下启动的。 针对以后创建的不带任何特定 CancellationToken 的所有异步计算,将全局 CancellationTokenSource 替换为新的全局标记源。 |
|
创建一个异步计算,该异步计算返回可控制计算的执行的 CancellationToken。 |
|
创建一个异步计算。 如果此计算成功完成,则此方法将返回包含返回值的 Choice1Of2。 如果此计算在完成之前引发异常,则此方法将返回包含引发的异常的 Choice2Of2。 |
|
获取用于运行异步计算的默认取消标记。 |
|
通过指定开始和结束函数(如 .NET Framework API)创建异步计算。 |
|
通过指定开始和结束函数(如 .NET Framework API)创建异步计算。 如果操作由一个参数进行限定,则应使用此重载。 |
|
通过指定开始和结束函数(如 .NET Framework API)创建异步计算。 如果操作由两个参数进行限定,则应使用此重载。 |
|
通过指定开始和结束函数(如 .NET Framework API)创建异步计算。 如果操作由三个参数进行限定,则应使用此重载。 |
|
创建一个包括当前的成功、异常和取消延续任务的异步计算。 该回调函数最终必须正好调用给定的延续任务中的一个。 |
|
创建一个运行给定计算并忽略其结果的异步计算。 |
|
生成一个限定范围的协作取消处理程序,以便在异步工作流内使用。 |
|
创建一个运行所有提供异步计算的异步计算,它先将每个异步计算作为工作项进行排队,并使用分离/连接模式。 |
|
运行异步计算并等待其结果。 |
|
创建在指定时间暂停的异步计算。 用于计划延迟的 Timer 对象。 在延迟时间内,该操作将不会阻止操作系统线程。 |
|
在线程池中启动异步计算。 请不要等待它的结果。 |
|
在线程池中执行计算。 返回一个 Task,一旦计算终止,它将完成到相应状态(生成结果、引发异常或获得取消)。如果未提供取消标记,则将使用默认取消标记。 |
|
在异步工作流内启动子计算。 这样便可以同时执行多个异步计算。 |
|
创建一个将给定计算作为 Task 开始的异步计算。 |
|
从当前操作系统线程开始立即运行异步计算。 |
|
从当前操作系统线程开始立即运行异步计算。 操作完成后,此方法将调用这三个延续中的其中一个。 |
|
创建一个异步计算,该异步计算通过使用提供的同步上下文的 Post() 方法运行其延续。 如果提供的同步上下文为 null,则异步计算等效于 SwitchToThreadPool。 |
|
创建一个异步计算,该异步计算会创建一个新线程并在该线程中运行其延续任务。 |
|
创建一个异步计算,该异步计算会对运行其延续的工作项进行排队。 |
|
创建运行提供的计算的异步计算。 如果此计算在完成之前被取消,则将执行通过运行提供的补偿功能生成的计算。 |
平台
Windows 7、Windows Vista SP2、Windows XP SP3、Windows XP x64 SP2、Windows Server 2008 R2、Windows Server 2008 SP2、Windows Server 2003 SP2
版本信息
F# 运行时
受以下版本支持:2.0、4.0
Silverlight
受以下版本支持:3