static class BlockingThreader { public static void Run(params Action[] f) { ManualResetEvent[] els=new ManualResetEvent[f.Length]; for (int i=0; i