public void AllowToFailFastIfTheTreadWasInterrupted()
        {
            InterruptTester tester = new InterruptTester();

            Do(tester);
            Assert.IsTrue(tester.raised);
        }
 private static void Do(InterruptTester tester)
 {
     tester.raised = false;
     tester.started = new Semaphore(0);
     tester.thread = new Thread(new ThreadStart(tester.Help));
     tester.thread.Start();
     tester.started.Acquire();
     tester.thread.Interrupt();
     tester.thread.Join();
 }
 private static void Do(InterruptTester tester)
 {
     tester.raised  = false;
     tester.started = new Semaphore(0);
     tester.thread  = new Thread(new ThreadStart(tester.Help));
     tester.thread.Start();
     tester.started.Acquire();
     tester.thread.Interrupt();
     tester.thread.Join();
 }
 public void AllowToFailFastIfTheTreadWasInterrupted()
 {
     InterruptTester tester = new InterruptTester();
     Do (tester);
     Assert.IsTrue(tester.raised);
 }