Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Método Task.Run (Action, CancellationToken)

.NET Framework (current version)
 

Publicado: octubre de 2016

Pone en cola el trabajo especificado para ejecutarlo en el grupo de subprocesos y devuelve un objeto Task que representa ese trabajo. Un token de cancelación permite cancelar el trabajo.

Espacio de nombres:   System.Threading.Tasks
Ensamblado:  mscorlib (en mscorlib.dll)

static member Run : 
        action:Action *
        cancellationToken:CancellationToken -> Task

Parámetros

action
Type: System.Action

Trabajo que se va a ejecutar de forma asincrónica.

cancellationToken
Type: System.Threading.CancellationToken

Token de cancelación que puede usarse para cancelar el trabajo.

Valor devuelto

Type: System.Threading.Tasks.Task

Tarea que representa el trabajo en cola que se va a ejecutar en el grupo de subprocesos.

Exception Condition
ArgumentNullException

El parámetro action era null.

TaskCanceledException

La tarea se canceló.

ObjectDisposedException

Se eliminó el CancellationTokenSource asociado a cancellationToken.

Si se solicita la cancelación antes de que comience la tarea de ejecución, la tarea no se ejecuta. En su lugar se establece en el Canceled estado e inicia un TaskCanceledException excepción.

El Run(Action, CancellationToken) método es una alternativa más sencilla a la TaskFactory.StartNew(Action, CancellationToken) (método). Crea una tarea con los valores predeterminados siguientes:

Para obtener información sobre cómo controlar las excepciones producidas por operaciones de la tarea, consulte Control de excepciones (Task Parallel Library).

El ejemplo siguiente se llama el Run(Action, CancellationToken) método para crear una tarea que recorre en iteración los archivos en el directorio C:\Windows\System32. La expresión lambda llama el Parallel.ForEach<'TSource> para agregar información acerca de cada archivo a un List<'T> objeto. Cada uno separado tarea anidada que se invoca el Parallel.ForEach<'TSource> bucle comprueba el estado del token de cancelación y, si se solicita la cancelación, llama a la CancellationToken.ThrowIfCancellationRequested (método). El CancellationToken.ThrowIfCancellationRequested método produce un OperationCanceledException excepción que se controla en un catch bloquear cuando el subproceso que realiza la llamada llama la Task.Wait (método).

No hay ningún ejemplo de código disponible o este idioma no es compatible.

Plataforma universal de Windows
Disponible desde 8
.NET Framework
Disponible desde 4.5
Biblioteca de clases portable
Se admite en: plataformas portátiles de .NET
Windows Phone Silverlight
Disponible desde 8.0
Windows Phone
Disponible desde 8.1
Volver al principio
Mostrar: