閱讀894 返回首頁    go 阿裏雲 go 技術社區[雲棲]


【進程線程與同步】5.3 創建與聯接線程

using System.Threading;
class Program
{
    static void f1()
    {
        System.Console.WriteLine("f1");
    }
    void f2()
    {
        System.Console.WriteLine("f2");
    }
    static void f3(object obj)
    {
        System.Console.WriteLine("f3 obj = {0}", obj);
    }
    static void Main()
    {
        //方法1:指定明確的ThreadStart委托類,委托對象作為實例化線程的參數,線程被創建後,先執行委托對象引用的方法
        Thread t1 = new Thread(new ThreadStart(f1));

        //方法2:直接用委托對象所引用的方法來調用
        Program program = new Program();
        Thread t2 = new Thread(program.f2);

        //方法3:靜態方法可以直接調用Thread的ParametrizedThreadStart構造函數方式調用 
        Thread t3 = new Thread(f3);

        //啟動線程
        t1.Start();
        t2.Start();
        t3.Start("hello");

        //掛起線程:Join()方法掛起當前線程,直到調用Join()方法的線程執行完畢。
        t1.Join();
        t2.Join();
        t3.Join();
    }
}

最後更新:2017-04-03 16:59:42

  上一篇:go HDFS API???????????????(1)-??????-????????????-?????????
  下一篇:go HDU 4549 矩陣連乘