Csharp/CSharp Tutorial/Thread/Thread Sleep

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

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>