Create a thread of execution : Thread Creation « Thread « C# / CSharp Tutorial






using System; 
using System.Threading; 
 
class MyThread { 
  public int count; 
  string thrdName; 
 
  public MyThread(string name) { 
    count = 0; 
    thrdName = name; 
  } 
 
  // Entry point of thread. 
  public void run() { 
    Console.WriteLine(thrdName + " starting."); 
 
    do { 
      Thread.Sleep(500); 
      Console.WriteLine("In " + thrdName + 
                        ", count is " + count); 
      count++; 
    } while(count < 10); 
 
    Console.WriteLine(thrdName + " terminating."); 
  } 
} 
 
class MainClass { 
  public static void Main() { 
    Console.WriteLine("Main thread starting."); 
 
    MyThread mt = new MyThread("Child #1"); 
    Thread newThrd = new Thread(new ThreadStart(mt.run)); 
 
    newThrd.Start(); 
 
    do { 
      Console.Write("."); 
      Thread.Sleep(100); 
    } while (mt.count != 10); 
 
    Console.WriteLine("Main thread ending."); 
  } 
}
Main thread starting.
Child #1 starting.
.....In Child #1, count is 0
.....In Child #1, count is 1
....In Child #1, count is 2
.....In Child #1, count is 3
....In Child #1, count is 4
.....In Child #1, count is 5
.....In Child #1, count is 6
....In Child #1, count is 7
.....In Child #1, count is 8
....In Child #1, count is 9
Child #1 terminating.
Main thread ending.








20.1.Thread Creation
20.1.1.Thread method with parameter
20.1.2.Thread method with no parameter
20.1.3.The creation of threads
20.1.4.Create a thread of execution
20.1.5.Create multiple threads of execution
20.1.6.Passing an argument to the thread method.
20.1.7.Use anonymous delegate as the worker method to create Thread
20.1.8.Adding with Thread objects
20.1.9.Communicating Data to a Thread
20.1.10.Primary Thread statistcs
20.1.11.Starting a Method in a Separate Thread
20.1.12.Thread Stats
20.1.13.List threads for PID