.NET Framework Tarea: instanciación básica y espera.


Ejemplo

Se puede crear una tarea directamente creando una instancia de la clase de Task ...

var task = new Task(() =>
{
    Console.WriteLine("Task code starting...");
    Thread.Sleep(2000);
    Console.WriteLine("...task code ending!");
});

Console.WriteLine("Starting task...");
task.Start();
task.Wait();
Console.WriteLine("Task completed!");

... o usando el método estático Task.Run :

Console.WriteLine("Starting task...");
var task = Task.Run(() =>
{
    Console.WriteLine("Task code starting...");
    Thread.Sleep(2000);
    Console.WriteLine("...task code ending!");
});
task.Wait();
Console.WriteLine("Task completed!");

Tenga en cuenta que solo en el primer caso es necesario invocar explícitamente el Start .