C#的委托方式发起线程

 class Program {        //一般我们会为比较耗时的操作 开启单独的线程去执行,比如下载操作        static int Test(int i,string str)        {            Console.WriteLine("test"+i+str);            Thread.Sleep(100);//让当亲线程休眠(暂停线程的执行) 单位ms            return 100;        }        static void Main(string[] args) {//在main线程中执行 一个线程里面语句的执行 是从上到下的            //1,通过委托 开启一个线程            //Func<int,string,int> a = Test;            //IAsyncResult ar = a.BeginInvoke(100,"siki",null,null);// 开启一个新的线程去执行 a所引用的方法             //IAsyncResult 可以取得当前线程的状态            //可以认为线程是同时执行的(异步执行)            //Console.WriteLine("main");            //while (ar.IsCompleted==false)//如果当前线程没有执行完毕            //{            //    Console.Write(".");            //    Thread.Sleep(10); //控制子线程的检测频率            //}            //int res =a.EndInvoke(ar);//取得异步线程的返回值            //Console.WriteLine(res);            //检测线程结束            //bool isEnd 

猜你喜欢

转载自blog.csdn.net/qq_39646949/article/details/123080209