【资料图】
目前应该是有很多小伙伴对于C#多线程循环输出方面的信息比较感兴趣,现在小编就收集了一些与C#多线程循环输出相关的信息来分享给大家,感兴趣的小伙伴可以接着往下看,希望会帮助到你哦。
用一个Monitor锁定就OK了,下面是完整代码,你可以直接复制过去运行的class Program { private event EventHandler OnNumberClear; public List
保持同步 Console.WriteLine("线程{0}正在运行{1}", Thread.CurrentThread.Name, count); if (count == 50) { OnNumberClear(this, new EventArgs());//引发完成事件 } count += 1; Monitor.Exit(this);//取消锁定 Thread.Sleep(5); } } public Program() { for (int i = 0; i < 10; i++) { Thread mythread = new Thread(run); mythread.Name = string.Format("{0}", i); ThreadCollection.Add(mythread); } OnNumberClear += new EventHandler(Program_OnNumberClear); } void Program_OnNumberClear(object sender, EventArgs e) { Console.WriteLine("执行完了,停止了所有线程的执行
"); foreach (Thread thread in ThreadCollection) { thread.Abort(); } } public void Action() { foreach (Thread thread in ThreadCollection) { thread.Start(); } } static void Main(string[] args) { Program program = new Program(); program.Action(); } }
本文到此结束,希望对大家有所帮助。
下一篇:最后一页
X 关闭
Copyright © 2015-2022 海峡母婴网版权所有 备案号:皖ICP备2022009963号-10 联系邮箱:396 029 142 @qq.com