Async.FromBeginEnd<'Arg1,'Arg2,'T> 方法 (F#)
依据 CLI API 内所使用样式中的操作的 Begin/End 对创建一个异步计算。
命名空间/模块路径:Microsoft.FSharp.Control
程序集:FSharp.Core(在 FSharp.Core.dll 中)
// Signature:
static member FromBeginEnd : 'Arg1 * 'Arg2 * ('Arg1 * 'Arg2 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
// Usage:
Async.FromBeginEnd (arg1, arg2, beginAction, endAction)
Async.FromBeginEnd (arg1, arg2, beginAction, endAction, cancelAction = cancelAction)
参数
arg1
类型:'Arg1操作的第一个参数。
arg2
类型:'Arg2操作的第二个参数。
beginAction
类型:'Arg1 * 'Arg2 * AsyncCallback * obj -> IAsyncResult启动传统 CLI 异步操作的函数。
endAction
类型:IAsyncResult -> 'T完成传统 CLI 异步操作的函数。
cancelAction
类型:(unit -> unit)一个要在请求取消时执行的可选函数。
返回值
一个包装给定 Begin/End 函数的异步计算。
备注
如果操作由两个参数进行限定,则应使用此重载。 例如,下面的代码为 web 服务调用创建异步计算。
Async.FromBeginEnd(arg1,arg2,ws.BeginGetWeather,ws.EndGetWeather)
运行计算时将执行 beginFunc,并执行表示计算的延续的回调。 在调用回调时,将使用 endFunc 获取总体结果。
计算将在等待操作完成时响应取消。 如果进行取消并指定了 cancelAction,则会执行取消,并且计算将继续等待操作完成。 如果未指定 cancelAction,则取消将导致计算立即停止,并且将忽略回调的后续调用。
示例请参见 Async.FromBeginEnd<'T> Method (F#)。
平台
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