Async.StartAsTask<'T> (Método de F#)
Ejecuta un cálculo en el grupo de subprocesos. Devuelve un objeto Task que se completará una vez en el estado correspondiente cuando finaliza el cálculo (genera el resultado, produce la excepción o se cancela). Si no se proporciona ningún token de cancelación, se utiliza el token de cancelación predeterminado.
Espacio de nombres/Ruta de acceso del módulo: Microsoft.FSharp.Control
Ensamblado: FSharp.Core (en FSharp.Core.dll)
// Signature:
static member StartAsTask : Async<'T> * ?TaskCreationOptions * ?CancellationToken -> Task<'T>
// Usage:
Async.StartAsTask (computation)
Async.StartAsTask (computation, taskCreationOptions = taskCreationOptions, cancellationToken = cancellationToken)
Parámetros
computation
Tipo: Async<'T>Cálculo que se va a ejecutar.
taskCreationOptions
Tipo: TaskCreationOptionsOpciones alternativas de creación de tareas.
cancellationToken
Tipo: CancellationTokenToken de cancelación opcional.
Valor devuelto
Objeto Task<TResult> que representa el cálculo especificado.
Ejemplo
En el ejemplo de código siguiente, se muestra el uso de Async.StartAsTask.
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)
Plataformas
Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2
Información de versiones
Runtime de F#
Se admite en la versión: 4.0
Silverlight
No compatible
Vea también
Referencia
Microsoft.FSharp.Control (Espacio de nombres de F#)
Historial de cambios
Fecha |
Historial |
Motivo |
---|---|---|
Agosto de 2010 |
Se ha agregado un ejemplo de código. |
Mejora de la información. |