Sdílet prostřednictvím


Async.FromBeginEnd<'Arg1,'T> – metoda (F#)

Styl použitý v rozhraní API CLI vytvoří asynchronní výpočtu ve dvojici zahájení a ukončení akce.

Cesta k oboru názvů nebo modul: Microsoft.FSharp.Control

Sestavení: FSharp.Core (v 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)

Parametry

  • arg
    Typ:'Arg1

    Argument pro operaci.

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

    Funkci inicializace tradiční CLI asynchronní operace.

  • endAction
    Typ:IAsyncResult -> 'T

    Funkce dokončování tradiční CLI asynchronní operace.

  • cancelAction
    Type: (unit -> unit)

    Volitelné funkce vykonávaná při zrušení je požadována.

Vrácená hodnota

Asynchronní výpočtu obtékání dané funkce zahájení a ukončení.

Poznámky

Toto přetížení je užitečný v případě, že operace je kvalifikován jeden argument.Můžete například vytvořit asynchronní výpočtu pro volání webové služby s následujícím kódem.

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

Při spuštění výpočtu beginFunc je spuštěn s zpětné volání, které představuje pokračování výpočtu.Při zpětném volání, celkový výsledek je získána pomocí endFunc.

Výpočtu bude odpovídat na zrušení při čekání na dokončení operace.Pokud dojde k zrušení, a cancelAction je určen, a poté je proveden a výpočtu nadále čekat na dokončení operace.Pokud cancelAction není určen, pak způsobí zrušení výpočtu okamžitě zastavit a následné vyvolání zpětného volání jsou ignorovány.

Příklad viz Async.FromBeginEnd <'T> Metoda (F#).

Platformy

Windows 8, Windows 7, Windows Server 2012 Windows Server 2008 R2

Informace o verzi

F# základní verze knihovny

Podporovány: 2.0, 4.0, přenosné

Viz také

Referenční dokumentace

Control.Async – třída (F#)

Microsoft.FSharp.Control – obor názvů (F#)