Async.AsBeginEnd<'Arg,'T> Yöntemi (F#)
.net Framework zaman uyumsuz programlama modeli (apm) sağlanan zaman uyumsuz hesaplaması için uygulamak için kullanılan üç işlevi oluşturur.
Ad alanı/modül yolu: Microsoft.FSharp.Control
Derleme: FSharp.Core (FSharp.Core.dll),
// Signature:
static member AsBeginEnd : ('Arg -> Async<'T>) -> ('Arg * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * (IAsyncResult -> unit)
// Usage:
Async.AsBeginEnd (computation)
Parametreler
computation
Type: 'Arg ->Async<'T>Geleneksel .net Framework zaman uyumsuz programlama modeli bölmek için zaman uyumsuz hesaplaması oluşturduğu bir işlevdir.
Dönüş Değeri
Begin, end ve cancel üyelerinden oluşan bir başlık.
Notlar
.net Framework zaman uyumsuz programlama modeli hakkında daha fazla bilgi için bkz: Zaman uyumsuz programlama modeli (apm).
Başlangıç, bitiş ve iptal işlevler normalde ile öneki üye olarak yayınlanacağı Begin, End, ve Cancel, ve kullanılabilecek bir tür tanımı içinde aşağıdaki gibi.
let beginAction,endAction,cancelAction =
Async.AsBeginEnd (fun arg -> computation)
member x.BeginSomeOperation(arg, callback ,state:obj) =
beginAction(arg, callback, state)
member x.EndSomeOperation(iar) = endAction(iar)
member x.CancelSomeOperation(iar) = cancelAction(iar)
Zaman uyumsuz hesaplaması hiçbir baðýmsýz deðiþken almaz, AsBeginEnd gibi kullanılır.
let beginAction,endAction,cancelAction =
Async.AsBeginEnd (fun () -> computation)
member x.BeginSomeOperation(callback, state:obj) =
beginAction((), callback, state)
member x.EndSomeOperation(iar) = endAction(iar)
member x.CancelSomeOperation(iar) = cancelAction(iar)
Zaman uyumsuz hesaplaması iki bağımsız değişkeni alırsa AsBeginEnd gibi kullanılır.
let beginAction,endAction,cancelAction =
Async.AsBeginEnd (fun arg1 arg2 -> computation)
member x.BeginSomeOperation(arg1, arg2, callback, state:obj) =
beginAction((), callback, state)
member x.EndSomeOperation(iar) = endAction(iar)
member x.CancelSomeOperation(iar) = cancelAction(iar)
Her iki durumda da, sonuçta elde edilen API diğer .net Framework dillerde kullanılan benzer ve diğer .net Framework dillerden kullanılmak üzere tasarlanmış bileşenler zaman uyumsuz hesaplamaları yayımlamak için kullanışlı bir yoldur.
Platformlar
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Sürüm Bilgisi
F# Çekirdek Kitaplığı sürümleri
Desteklenen: 2.0, 4.0, Portable