Aracılığıyla paylaş


Async.FromBeginEnd<'Arg1,'T> Yöntemi (F#)

CLI API'lerinde kullanılan Begin/End eylem çifti açısından bir zaman uyumsuz hesaplama oluşturur.

Ad alanı/modül yolu: Microsoft.FSharp.Control

Derleme: FSharp.Core (FSharp.Core.dll),

// Signature:
static member FromBeginEnd : 'Arg1 * ('Arg1 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>

// Usage:
Async.FromBeginEnd (arg, beginAction, endAction)
Async.FromBeginEnd (arg, beginAction, endAction, cancelAction = cancelAction)

Parametreler

  • arg
    Türü:'Arg1

    Operasyonun için bağımsız değişkeni.

  • beginAction
    Type: 'Arg1 * AsyncCallback * obj -> IAsyncResult

    Geleneksel CLI zaman uyumsuz işlem başlatma işlevi.

  • endAction
    Türü:IAsyncResult -> 'T

    Geleneksel CLI zaman uyumsuz işlemi tamamlama işlevi.

  • cancelAction
    Type: (unit -> unit)

    İptal istendiğinde yürütülecek isteğe bağlı işlev.

Dönüş Değeri

Verilen Begin/End işlevlerini kaydırma zaman uyumsuz hesaplaması.

Notlar

Bu aþýrý yükleme işlemi bir bağımsız değişken karşılıyorsa kullanılmalıdır. Örneğin, aşağıdaki kod ile bir web hizmeti çağrısı için zaman uyumsuz bir hesaplama oluşturabilirsiniz.

Async.FromBeginEnd(place,ws.BeginGetWeather,ws.EndGetWeather)

Hesaplama çalıştırdığınızda, beginFunc devamı hesaplaması olarak temsil eden bir geri yürütülür. Geri arama çağrıldığında genel sonuç endFunc kullanılarak alınır.

İşlemin tamamlaması için beklerken hesaplama iptal yanıtı verir. İptal gerçekleşirse ve cancelAction belirtilmişse yürütülür ve hesaplama işlemin tamamlaması için beklemeye devam eder. cancelAction belirtilmemişse, sonra iptal hesaplamanın hemen durmasına neden olur ve sonraki etkinleştirilmelerinde geri arama yok sayılır.

Bir örnek için bkz: Async.FromBeginEnd <'T> Yöntem (F#).

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

Ayrıca bkz.

Başvuru

Control.Async Sınıfı (F#)

Microsoft.FSharp.Control İsim Uzayı (F#)