委托是什么呢?这个名字的意思已经赋予了我们想象的空间,你是编程的,你现在正在写一个ASP.NET网页,而JS是你不熟悉的,于是你委托你的一位同事来帮助你完成JS部分。注意:委托和类是同一个级别的,委托主要用于主线程和子线程之间安全问题,以及异步操作互不影响,例子如下:
//说明:主线程的方法main委托给子线程去执行
1 using System;
2 using System.Collections.Generic;
3 using System.Text;
4
5 namespace TestApp
6 {
7 /// <summary>
8 /// 委托
9 /// </summary>
10 /// <param name="s1"></param>
11 /// <param name="s2"></param>
12 /// <returns></returns>
13 public delegate string ProcessDelegate(string s1, string s2);
14
15 class Program
16 {
17 static void Main(string[] args)
18 {
19 /* 调用方法 */
20 ProcessDelegate pd = new ProcessDelegate(new Test().Process);
21 Console.WriteLine(pd("Text1", "Text2"));
22 }
23 }
24
25 public class Test
26 {
27 /// <summary>
28 /// 方法
29 /// </summary>
30 /// <param name="s1"></param>
31 /// <param name="s2"></param>
32 /// <returns></returns>
33 public string Process(string s1,string s2)
34 {
35 return s1 + s2;
36 }
37 }
38 }
何为异步线程就是在程序的主线程之外在创建一个子线程执行,线程之间执行相互不想干,主线程并不需要要等待子线程的执行,就是相当于跑步比赛一样,各个赛道中的人同时进行奔跑。多线程概念之中还有一个同步线程,其实就是将多个线程包装成一个模块,依次执行,就相当于有很多条赛道,第一条赛道中的人跑完,第二条赛道中的人继续奔跑,依次执行。