2 using System.Collections;
3 using System.Threading;
7 static ManualResetEvent dispose = new ManualResetEvent (false);
8 static ManualResetEvent wait = new ManualResetEvent (false);
10 static IEnumerable GetIt2 ()
12 yield return Delay ();
23 public static int Main ()
25 var e = GetIt2 ().GetEnumerator ();
26 ThreadPool.QueueUserWorkItem (l => {
28 ((IDisposable) e).Dispose ();
38 Console.WriteLine (e.Current);
39 if ((int) e.Current != 1)