Mega Code Archive

 
Categories / C# Tutorial / Thread
 

Use the Interlocked object

using System; using System.Threading; class MainClass {   private int Runs = 0;   public void CountUp()    {     while (Runs < 10)     {       Interlocked.Increment(ref Runs);       Console.WriteLine(Thread.CurrentThread.Name + " " + Runs);       Thread.Sleep(1000);     }    }   public static void Main()    {     MainClass ex = new MainClass();     ex.RunThreads();   }   public void RunThreads()   {     Thread t2 = new Thread(new ThreadStart(CountUp));     t2.Name = "t2";     Thread t3 = new Thread(new ThreadStart(CountUp));     t3.Name = "t3";     t2.Start();     t3.Start();   } } t2 1 t3 2 t2 3 t3 4 t2 5 t3 6 t2 7 t3 8 t2 9 t3 10