Async.StartAsTask<'T>-Methode (F#)
Führt eine Berechnung im Threadpool aus.Gibt Task zurück, der im entsprechenden Zustand abgeschlossen wird, sobald die Berechnung beendet wird (das Ergebnis liefert, eine Ausnahme auslöst oder abgebrochen wird). Wenn kein Abbruchtoken bereitgestellt wird, wird das Standardabbruchtoken verwendet.
Namespace/Modulpfad: Microsoft.FSharp.Control
Assembly: FSharp.Core (in FSharp.Core.dll)
// Signature:
static member StartAsTask : Async<'T> * ?TaskCreationOptions * ?CancellationToken -> Task<'T>
// Usage:
Async.StartAsTask (computation)
Async.StartAsTask (computation, taskCreationOptions = taskCreationOptions, cancellationToken = cancellationToken)
Parameter
computation
Typ: Async<'T>Die auszuführende Berechnung.
taskCreationOptions
Typ: TaskCreationOptionsOptionale Aufgabenerstellungsoptionen.
cancellationToken
Typ: CancellationTokenOptionales Abbruchtoken.
Rückgabewert
Ein Task<TResult>-Objekt, das die angegebene Berechnung darstellt.
Beispiel
Im folgenden Codebeispiel wird die Verwendung von Async.StartAsTask veranschaulicht.
open System.Windows.Forms
let bufferData = Array.zeroCreate<byte> 100000000
let async1 =
async {
use outputFile = System.IO.File.Create("longoutput.dat")
do! outputFile.AsyncWrite(bufferData)
}
let form = new Form(Text = "Test Form")
let button = new Button(Text = "Start")
form.Controls.Add(button)
button.Click.Add(fun args -> let task = Async.StartAsTask(async1)
printfn "Do some other work..."
task.Wait()
printfn "done")
Application.Run(form)
Plattformen
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Versionsinformationen
F#-Kern-Bibliotheks-Versionen
Unterstützt in: 4,0, portablen