/*
* C# Programmers Pocket Consultant
* Author: Gregory S. MacBeth
* Email: [email protected]
* Create Date: June 27, 2003
* Last Modified Date:
* Version: 1
*/ using System; using System.Threading;
namespace Client.Chapter_15___Threading
{ public class ThreadTestSleepInteruptResume
{ public static int Main()
{
Thread X = new Thread(new ThreadStart(SecondThread));
X.Start();
//Cause the second thread to resume
X.Interrupt();
//Place the second thread in a suspended state
X.Suspend();
//do some work and restart the thread
X.Resume();
//force this thread to wait until the seond thread is finished
X.Join(); return 0;
} public static void SecondThread()
{
Console.WriteLine("Running second thread");
//Place the second thread a sleep infinitly try
{
Thread.Sleep(Timeout.Infinite);
} catch (ThreadInterruptedException e)
{
Console.WriteLine("Thread Interupted");
} catch(ThreadAbortException e)
{
Thread.ResetAbort();
}
}
}
}