Csharp/CSharp Tutorial/Thread/Thread Sleep
Foreground Thread Sleep
<source lang="csharp">using System; using System.Threading; public class MainClass {
private static void MyFunction() { Thread.Sleep( 5000 ); Console.WriteLine( "Exiting extra thread" ); } static void Main() { Thread thread1 = new Thread( new ThreadStart(MyFunction) ); thread1.Start(); Console.WriteLine( "Exiting main thread" ); }
}</source>
Exiting main thread Exiting extra thread
Putting a Thread to Sleep
<source lang="csharp">using System; using System.Threading; public class ThreadSleep {
public static Thread worker; public static Thread worker2; public static void Main() { worker = new Thread(new ThreadStart(Counter)); worker2 = new Thread(new ThreadStart(Counter2)); worker2.Priority = System.Threading.ThreadPriority.Highest; worker.Start(); worker2.Start(); } public static void Counter() { Console.WriteLine("Entering Counter"); for (int i = 1; i < 50; i++) { Console.Write(i + " "); if (i == 10) Thread.Sleep(1000); } Console.WriteLine(); Console.WriteLine("Exiting Counter"); } public static void Counter2() { Console.WriteLine("Entering Counter2"); for (int i = 51; i < 100; i++) { Console.Write(i + " "); if (i == 70) Thread.Sleep(5000); } Console.WriteLine(); Console.WriteLine("Exiting Counter2"); }
}</source>
Thread.Sleep
<source lang="csharp">using System.Threading; using System.Windows.Forms;
class ShowFormAndSleep {
public static void Main() { Form form = new Form(); form.Show(); Thread.Sleep(2500); form.Text = "My First Form"; Thread.Sleep(2500); }
}</source>