c#中的委託Delegate及線程Thead委託

------------->委託,故名思議就是中間代理人的意思,它實際上是一個類。

它的使用步驟如下:

1.聲明一個委託對象,其參數形式一定要和你想要包含的方法的參數形式一致。

 如:delegate void GetDate(string name)

2.定義所有你要定義的方法,其參數形式一定要和委託對象的參數形式一致。

  public void ShowEnglishName(string nam)

{

  console.write("Hello"+name);

}

  public void ShowChinaName(string nam)

{

  console.write("你好,"+name);

}

3.創建委託實例對象,并將希望它執行的方法包含在對象中。

 GetDate dd=new GetDate(ShowChinaName);

4.通過委託調用包含在它其中的方法。

dd.invoke("楊麗娥");

other: 使用+=是增加委託調用的方法,使用-=是減少委託調用的方法

  實際上+=相當於Delegate.Combine, -=相當於Delegate.Remove

------------->Thead委託---------------------------

線程:是CPU調度和分配的單位。

每一個進程都有且只有一個主線程,即Main Thead .它在進程啟動時變創建。在程式中另外定義的線程針對主線程叫子線程。

Thread类的构造函数有2类:

 一种是不带参数(ThreadStart 委托) --

 public Thread(ThreadStart start);

 

另一种是带参数(ParameterizedThreadStart 委托) --

public Thread(ParameterizedThreadStart start);

public delegate void ParameterizedThreadStart(Object obj);

多一分冷靜,少一分浮躁
原文地址:https://www.cnblogs.com/AnnyGird-LiMing/p/5278168.html