Parallel 线程
来源:互联网 发布:广州打车软件 编辑:程序博客网 时间:2024/05/20 05:08
Parallel
1、就是对Task基础上封装多个任务,并行计算,主线程也会执行其中一个委托,本质就是Task+WaitAll
2、计算全部完成后才会进入下一行代码
3、看上去就是同步编程
4、一个亮点是可以控制同时使用的线程数量,多余任务会等待前面任务执行完之后,用空余线程执行
直接上代码了
try { Console.WriteLine("************开始**************"); //正常调用 Console.WriteLine("************正常调用**************"); Parallel.Invoke( () => {Console.WriteLine("方法1"); }, () => {Console.WriteLine("方法2"); }, () => {Console.WriteLine("方法3"); }, () => {Console.WriteLine("方法4"); } ); //Parallel.For Console.WriteLine("************Parallel.For**************"); Parallel.For(0, 5, t => { Console.WriteLine(t); }); //Parallel.For Console.WriteLine("************Parallel.For**************"); Parallel.ForEach(new int[]{1,2,5,4,78,5}, t => { Console.WriteLine(t); }); //控制线程数 Console.WriteLine("************ParallelOptions**************"); ParallelOptions po = new ParallelOptions(); po.MaxDegreeOfParallelism = 2;//每次2条线程执行 Parallel.For(0, 5,po, t => { Console.WriteLine(t); }); //退出循环 退出单次循环 Console.WriteLine("************退出单次循环**************"); Parallel.For(0, 5, (t,state) =>//参数这里需要传入state { Console.WriteLine(t); if (t == 1) { state.Break();//退出单次循环 return;//必须有 } }); //退出循环 退出所有循环 Console.WriteLine("************退出所有循环**************"); Parallel.For(0, 5, (t, state) =>//参数这里需要传入state { Console.WriteLine(t); state.Stop();//退出所有循环 return;//必须有 }); Console.WriteLine("************结束**************"); Console.Read(); } catch (Exception ex) { //写日志 }
0 0
- Parallel 线程
- [C#] Parallel.For的线程数
- 任务线程和同步(一、Parallel)
- 线程的理解Task和Parallel
- Parallel
- 任务,线程和同步(一)之Parallel类
- Parallel.For & Parallel.ForEach & Parallel.Invoke
- Task Parallel.For、Parallel.ForEach、Parallel.Invoke
- parallel-junit
- Parallel LINQ
- Parallel Model
- GNU Parallel
- Oracle Parallel
- .net Parallel
- parallel用法
- oracle parallel
- php parallel
- PARALLEL hint
- Android View绘制流程
- STL 栈stack的使用
- hdoj2602 Bone Collector
- BLE协议栈构成及各部分概念解析
- 安卓-启动前台服务
- Parallel 线程
- 第27天(就业班) 泛型、泛型的反射、注解
- CGI 与 fast_cgi
- SVM支持向量机原理(三)线性不可分支持向量机与核函数
- HDU4424:Conquer a New Region(并查集 + 贪心)
- Android Studio Plugins
- android倒计时控件
- JIT与JVM的三种执行模式:解释模式、编译模式、混合模式
- vagrant的配置文件vagrantfile详解