static async Task Main(string[] args) { Cafe cup = HacerCafe(); Console.WriteLine("cafe listo"); Task <Huevos> eggsTask = FreirHuevos(2); Task <Bacon> baconTask = FreirBacon(3); Task <Tostada> toastTask = TostarPan(2); Tostada toast = await toastTask; await AplicarMantequilla(toast); AplicarJamon(toast); Console.WriteLine("tostadas preparadas"); Zumo oj = HacerZumo(); Console.WriteLine("zumo en su punto"); Huevos eggs = await eggsTask; Console.WriteLine("huevos listos"); Bacon bacon = await baconTask; Console.WriteLine("bacon listo"); Console.WriteLine("desayuno preparado!"); }
static async Task Main(string[] args) { Cafe cup = HacerCafe(); Console.WriteLine("cafe listo"); var eggsTask = FreirHuevos(2); var baconTask = FreirBacon(3); var toastTask = HacerTostadasConMantequillaYJamon(2); var allTasks = new List <Task> { eggsTask, baconTask, toastTask }; while (allTasks.Any()) { Task finished = await Task.WhenAny(allTasks); if (finished == eggsTask) { Console.WriteLine("huevos listos"); allTasks.Remove(eggsTask); var eggs = await eggsTask; } else if (finished == baconTask) { Console.WriteLine("bacon listo"); allTasks.Remove(baconTask); var bacon = await baconTask; } else if (finished == toastTask) { Console.WriteLine("tostadas preparadas"); allTasks.Remove(toastTask); var toast = await toastTask; } else { allTasks.Remove(finished); } } Zumo oj = HacerZumo(); Console.WriteLine("zumo en su punto"); Console.WriteLine("desayuno preparado!"); }
static async Task Main(string[] args) { Cafe cup = HacerCafe(); Console.WriteLine("cafe listo"); Task <Huevos> eggsTask = FreirHuevos(2); Task <Bacon> baconTask = FreirBacon(3); var toastTask = HacerTostadasConMantequillaYJamon(2); Zumo oj = HacerZumo(); Console.WriteLine("zumo en su punto"); await Task.WhenAll(eggsTask, baconTask, toastTask); Console.WriteLine("huevos listos"); Console.WriteLine("bacon listo"); Console.WriteLine("tostadas preparadas"); Console.WriteLine("desayuno preparado!"); }
static void Main(string[] args) { Cafe cup = HacerCafe(); Console.WriteLine("cafe listo"); Huevos eggs = FreirHuevos(2); Console.WriteLine("huevos listos"); Bacon bacon = FreirBacon(3); Console.WriteLine("bacon listo"); Tostada toast = TostarPan(2); AplicarMantequilla(toast); AplicarJamon(toast); Console.WriteLine("tostadas preparadas"); Zumo oj = HacerZumo(); Console.WriteLine("zumo en su punto"); Console.WriteLine("desayuno preparado!"); }