1、 打开vs或者其他IDE, 创建控制台项目如下
2、 无参数的多线程。在Program.cs文件里面写入如下代码class Program{static void Main(string[] args){int num = 2;for ( int i =0; i < num; i++){noParmaThread();}}private static void StartThread(){Console.WriteLine("---------开始了新线程---------");Thread.Sleep(2000);//waitConsole.WriteLine("---------线程结束---------");}//不需要传递参数private static void noParmaThread(){ThreadStart threadStart = new ThreadStart(StartThread);var thread = new Thread(threadStart);thread.Start();//开始线程}}
3、步骤2的运行结果,如下图
4、 含参墙绅褡孛数多线程。static void Main(string[] args){int num = 3;for ( int i =0; i < num; i++){oneParamThread("第" + i.ToString() +"个");}}private static void oneParamThread( string param){var thread = new Thread(new ParameterizedThreadStart(StartThread));thread.SetApartmentState(ApartmentState.STA);thread.IsBackground = true;thread.Start(param);thread.Join();}private static void StartThread(Object obj){string s = obj as string;Console.WriteLine("---------开始了 "+s +" 新线程---------");Thread.Sleep(2000);//waitConsole.WriteLine("---------线程 "+s+" 结束---------");}
5、 步骤4的运行结果如下图所示
6、 使用专门的线程类。代码如下class Program { static void Main(string[] args) { int num = 3; for ( int i =0; i < num; i++) { MyThreadClass mt = new MyThreadClass(i); ThreadStart threadStart = new ThreadStart(mt.StartThread); Thread thread = new Thread(threadStart); thread.Start(); //等待线程结束 } } } public class MyThreadClass { public string output { set; get; } public int parame { set; get; } public MyThreadClass(int p) { this.parame = p; } public void StartThread() { Console.WriteLine("---------开始了 " + parame.ToString() + " 新线程---------"); Thread.Sleep(2000);//wait output = "线程 "+ parame+" 结束了"; Console.WriteLine("---------线程 " + parame.ToString() + " 结束---------"); } }
7、 步骤6的结果如下图
8、如果您觉得有用,记得在下方点击投票、点赞、关注、留言,小编会定期奉上更多的惊喜哦,您的支持才是小编继续努力的动力,么么哒。