2 using System
.Collections
;
3 using System
.Threading
;
7 static ManualResetEvent dispose
= new ManualResetEvent (false);
9 static IEnumerable
GetIt2 ()
11 yield return Delay ();
22 public static int Main ()
24 var e
= GetIt2 ().GetEnumerator ();
25 ThreadPool
.QueueUserWorkItem (l
=> {
27 ((IDisposable
) e
).Dispose ();
36 Console
.WriteLine (e
.Current
);
37 if ((int) e
.Current
!= 1)