多线程 - C#

public class MyThread

//传参

  {



  public double Diameter=10;



  public double Result=0;



  public MyThread(int Diameter)



  {



  this.Diameter = Diameter;



  }



  public void Calculate()



  {



  Console.WriteLine( "Calculate Start");



  Thread.Sleep(2000);



  Result = Diameter*Math.PI;;



  Console.WriteLine("Calculate End, Diameter is ,Result is " ,this.Diameter, Result);



  }



  }



  MyThread t=new MyThread(5.0);



  ThreadStart threadStart=new ThreadStart(t.Calculate)



  Thread thread=new Thread(threadStart);



  thread.Start();

}

//不传参

using System;  

using System.Collections.Generic;  

using System.Text;  

using System.Threading;  

namespace 线程练习  

{  

    class Program  

    {  

        static void Main(string[] args)  

        {  

            Console.WriteLine("开始一个新的线程,名为次线程");  

            Thread t = new Thread(new ThreadStart(ThreadProc));  

            t.Start();  

            for (int i = 0; i < 4; i++)  

            {  

                Console.WriteLine("主线程:" + i);  

                Thread.Sleep(1000);  

            }  

            Console.WriteLine("调用Join函数等待次线程结束");  

            //当次线程执行完毕后,Join阻塞调用线程,直到某个线程终止为止,本例为次线程  

            t.Join();  

            Console.WriteLine("线程执行完毕");  

        }  

        public static void ThreadProc()  

        {  

            for (int i = 0; i < 10; i++)  

            {  

                Console.WriteLine("ThreadPorc:{0}", i);  

                Thread.Sleep(1000);//将当前进程阻塞指定的毫秒数  

            }  

  

  

        }  

    }  

}  

 

你可能感兴趣的:(多线程)