Parallel是循环中开启多线程

Stopwatch watch1 = new Stopwatch();
watch1.Start();
for (int i = 1; i <= 10; i++)
{Console.Write(i + ",");Thread.Sleep(1000);
}
watch1.Stop();
Console.WriteLine(watch1.Elapsed);Stopwatch watch2 = new Stopwatch();
watch2.Start();//会调用线程池中的线程
Parallel.For(1, 11, i =>
{Console.WriteLine(i + ",线程ID:" + Thread.CurrentThread.ManagedThreadId);Thread.Sleep(1000);
});
watch2.Stop();
Console.WriteLine(watch2.Elapsed);

  循环List<T>

List<int> list = new List<int>() { 1, 2, 3, 4, 5, 6, 6, 7, 8, 9 };
Parallel.ForEach<int>(list, n =>
{Console.WriteLine(n);Thread.Sleep(1000);
});

循环Action[]
Action[] actions = new Action[] { new Action(()=>{Console.WriteLine("方法1");}),new Action(()=>{Console.WriteLine("方法2");})
};
Parallel.Invoke(actions);

转载于:https://www.cnblogs.com/xietianjiao/p/7429849.html

C#异步编程のParallel(并行)相关推荐

  1. 异步编程和并行编程的区别

    异步的操作都在一个线程完成,而并行的操作必须要两个以上的线程. 为什么呢,因为并行,意味着同时,对于两个操作,一个线程无法同时完成它们,就像我不能一边用手洗衣服一边用手抄作业,你的这双手就是一个线程, ...

  2. 【转】.Net中的异步编程总结

    一直以来很想梳理下我在开发过程中使用异步编程的心得和体会,但是由于我是APM异步编程模式的死忠,当TAP模式和TPL模式出现的时候我并未真正的去接纳这两种模式,所以导致我一直没有花太多心思去整理这两部 ...

  3. dart异步编程_如何通过期货将一些异步编程引入Dart

    dart异步编程 by Mohammed Salman 穆罕默德·萨尔曼(Mohammed Salman) 如何通过期货将一些异步编程引入Dart (How to bring a little asy ...

  4. 网络编程异步_概括地说,网络异步编程

    网络编程异步 重点(Top highlight) Asynchronous programming is not a new concept and has been around for sever ...

  5. 如何运用并行编程Parallel提升任务执行效率

    本文来自小易,[DoTNET技术圈]公众号已获得转载授权. <.NET并发变成实战>读后感:并行编程Parallel 手打目录: 一.前言 二.任务并行库(TPL)的介绍 三.Parall ...

  6. java 多线程和并行编程_Java 8中的并行和异步编程

    java 多线程和并行编程 并行代码是在多个线程上运行的代码,曾经是许多经验丰富的开发人员的噩梦,但是Java 8带来了许多更改,这些更改应该使这种提高性能的窍门更加易于管理. 并行流 在Java 8 ...

  7. 【转】1.5异步编程:.NET4.X 数据并行

    任务并行库 (TPL) 是 .NET Framework 4的 System.Threading 和 System.Threading.Tasks 命名空间中的一组公共类型和 API.TPL的目的在于 ...

  8. 第九节:深究并行编程Parallel类中的三大方法 (For、ForEach、Invoke)和几大编程模型(SPM、APM、EAP、TAP)

    一. 并行编程 1. 区分串行编程和串行编程 ①. 串行编程:所谓的串行编程就是单线程的作用下,按顺序执行.(典型代表for循环 下面例子从1-100按顺序执行) ②. 并行编程:充分利用多核cpu的 ...

  9. C# 学习笔记——PL 并行编程 TPL 和传统 .NET 异步编程

    C# 学习笔记--PL 并行编程 TPL 和传统 .NET 异步编程 Task C# 多线程和异步模型 TPL模型 Task,异步,多线程简单总结 1,如何把一个异步封装为Task异步 Task.Fa ...

最新文章

  1. 利用jdt快速实现pmd的功能
  2. 一些关于Hibernate延迟加载的误区
  3. 服务器Jmail配置问题
  4. python可变参数_Python 的四种共享传参详解
  5. Java中动态获取项目根目录和tomcat的绝对路径
  6. 每天一道LeetCode-----找到有多少个组合加起来和是n,每个组合的数字只能是1或者2
  7. dataframe记录数_大数据系列之Spark SQL、DataFrame和RDD数据统计与可视化
  8. TCP实现多线程下文件的上传
  9. 河北省能力计算机提升培训,基于教师工作坊的河北省教师信息技术应用能力提升三位一体培训模式研究...
  10. lucene学习-3 - 代码重构
  11. 达摩院研发自动驾驶高精定位系统,无GPS信号也可实现厘米级定位
  12. leetcode string
  13. Linux运维跳槽40道面试精华题
  14. 怎样修改安卓位置服务器,修改安卓定位服务器地址
  15. 百度AI开放平台—简单步骤介绍(多图警告)
  16. 冷门短视频带货玩法,零门槛赚钱项目
  17. 100个替代昂贵商业软件的开源应用
  18. sqlite报错database is locked
  19. 供应链金融运营研究 -----内容运营
  20. 关于《机器学习实战》中创建决策树的核心代码分析

热门文章

  1. java第二阶段_Java第二阶段总结
  2. Java语言之数组_java语言之数组-----选择排序
  3. 前端JavaScripts基础知识点讲义代码
  4. 京东数科上市首轮问询「答卷」:与蚂蚁集团有本质区别、信用风险损失有限
  5. java架构师眼中的高并发架构
  6. 20-forEach循环语句
  7. 《去哪网编程题》身份证分组
  8. C#自定义控件,在项目工具箱中加入自定义控件,调用自定义控件
  9. Python Demo 05--四大名著词云
  10. 【搜索引擎Jediael开发4】V0.01完整代码