viernes, 11 de diciembre de 2015

Hilos en C#, WaitAll

Es posible utilizar el método WaitAll de la clase Task para esperar a que terminen múltiples tareas antes de continuar la ejecución de la tarea primaria, como se ve en el siguiente ejemplo:

using System;
using System.Threading;
using System.Threading.Tasks;

namespace UsandoTaskWaitAll
{
    class Program
    {
        static void Main(string[] args)
        {
            Task[] tasks = new Task[3];

            tasks[0] = Task.Run(()=> 
            {
                Thread.Sleep(1000);
                Console.WriteLine("1");
                return 1;
            });

            tasks[1] = Task.Run(() =>
            {
                Thread.Sleep(1000);
                Console.WriteLine("2");
                return 1;
            });

            tasks[2] = Task.Run(() =>
            {
                Thread.Sleep(1000);
                Console.WriteLine("3");
                return 1;
            });

            Task.WaitAll(tasks);

        }
    }
}

Referencia:
Exam Ref 70-483 Programming in C#

No hay comentarios.:

Publicar un comentario