using System; using System.Threading; namespace Recetas.CSharp.Cap04.R0408 { public sealed class UsoAutoResetEvent { // Crea instancia de EventResetEvent pasando false // al argumento. Esto evita que automáticamente se invoque // el método `Set`: static EventWaitHandle waitHandle = new AutoResetEvent (false); public static void Main() { new Thread (ProcesoEspera).Start (); Thread.Sleep (1500); // Activa la señal o notificación: waitHandle.Set(); } static void ProcesoEspera() { Console.WriteLine ("\nMétodo `ProcesoEspera` en espera..."); waitHandle.WaitOne(); // A espera de notificación Console.WriteLine ("Método `ProcesoEspera` notificado..."); } } }