Csharp/CSharp Tutorial/Thread/Thread Sleep

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

Foreground Thread Sleep

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" );
    }
}
Exiting main thread
Exiting extra thread

Putting a Thread to Sleep

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");
    }
}

Thread.Sleep

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);
     }
}