创建线程的一种简单方式是定义一个委托,并异步调用它。 委托是方法的类型安全的引用。Delegate类 还支持异步地调用方法。在后台,Delegate类会创建一个执行任务的线程。
接下来定义一个方法,使用委托异步调用(开启一个线程去执行这个方法)
static int TakesAWhile(int data,int ms){ Console.WriteLine("TakesAWhile started!"); Thread.Sleep(ms);//程序运行到这里的时候会暂停ms毫秒,然后继续运行下一语句 Console.WriteLine("TakesAWhile completed"); return ++data; } public delegate int TakesAWhileDelegate(int data,int ms);// 声明委托 static void Main(){ TakesAWhileDelegate d1 = TakesAWhile; IAsyncResult ar = d1.BeginInvoke(1,3000,null,null); while(ar.IsCompleted ==false ){ Console.Write("."); Thread.Sleep(50); } int result = d1.EndInvoke(ar); Console.WriteLine("Res:"+result); }
Pingback: Albion Online Silver