多线程

来源:互联网 发布:淘宝宝贝复制破解 编辑:程序博客网 时间:2024/06/08 19:06

不带参数

 class Program    {        static void Main(string[] args)        {            Thread t = new Thread(testProc);            t.Start();        }         static void  testProc()        {            FileHelper.WriteFile("C:/Log.txt",DateTime.Now.ToShortTimeString()+" -- 被调用 \r\n",true);        }    }


带参数调用

class Program    {        static void Main(string[] args)        {            Thread t = new Thread(testProc);            t.Start(new List<string>() {"哈哈" ,"嘿嘿"});        }         static void  testProc(object parms)        {            List<string> list = parms as List<string>;            FileHelper.WriteFile("C:/Log.txt", DateTime.Now.ToShortTimeString() + " -- 被调用,传入参数-->"+ list[0] + list[1]+" \r\n", true);        }    }


带返回值调用

 class Program    {        static void Main(string[] args)        {            Task<string> task = new Task<string>(t => TaskProc((List<string>)t), new List<string>() { "Task", "嘿嘿" });//注意表达式的写法哦~    Task<返回值类型> t = new Task<返回值类型>(变量 => 函数名((参数类型)变量), 参数值);            task.Start();            Console.WriteLine("正在执行异步调用,请稍后...:" + task.Status);            task.Wait();            Console.WriteLine( "异步返回值:"+ task.Result);            Console.ReadKey();        }        static string TaskProc(List<string> parms)        {            List<string> list = parms as List<string>;            FileHelper.WriteFile("C:/Log.txt", DateTime.Now.ToShortTimeString() + " -- 被调用,传入参数-->" + list[0] + list[1] + " \r\n", true);            return "异步调用成功";        }    }



0 0