using System; using System.Collections.Generic; using System.Text; using System.Threading; using System.IO; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.WriteLine("start testing multisthread...."); Thread th = new Thread(new ThreadStart(new passobject("xiangxiang", 27).threadmethod)); th.Start(); th.Join(); Console.WriteLine("thread end...."); Console.WriteLine("main thread end...."); // Console.ReadLine(); Console.WriteLine("start testing thread pool multisthread...."); WaitCallback wc = new WaitCallback(new passobject("xiang", 26).threadpoolmethod); ThreadPool.QueueUserWorkItem(wc,new passobject("xiangxiang",0)); Console.ReadLine(); } } class passobject { public string name; public int age; public passobject(string name,int age) { this.name = name; this.age = age; } public void threadpoolmethod(object o) { Thread.Sleep(3000); Console.WriteLine("this name is "+name+",and age is "+age+""); Console.WriteLine("that name is "+(o as passobject).name+",and age is "+(o as passobject).age); } public void threadmethod() { Thread.Sleep(3000); Console.WriteLine("this name is " + name + ",and age is " + age + ""); } } }
C# multithread,threadpool,ParameterizedThreadStart,传递参数给线程以及回调
最新推荐文章于 2024-06-03 16:04:40 发布