C# Parallel类For循环与普通For循环耗时性能比较
1 static void Main(string[] args)
2 {
3 var dt = DateTime.Now;
4 var rand = new Random(DateTime.Now.Millisecond);
5 for (int i = 0; i < 20; i++)
6 {
7 Thread.Sleep(rand.Next(100, 1000));
8 }
9 var standerTime = (DateTime.Now - dt).TotalMilliseconds;
10 Console.WriteLine("标准的for循环,耗时{0}毫秒", standerTime);
11 dt = DateTime.Now;
12 Parallel.For(0, 20, i =>
13 {
14 Thread.Sleep(rand.Next(100, 1000));
15 });
16 var parallelTime = (DateTime.Now - dt).TotalMilliseconds;
17 Console.WriteLine("并行的for循环,耗时{0}毫秒", parallelTime);
18 Console.WriteLine();
19 if (standerTime <= parallelTime)
20 {
21 Console.WriteLine("----------标准的for循环节省{0}毫秒----------", (parallelTime - standerTime));
22 }
23 else
24 {
25 Console.WriteLine("----------并行的for循环节省{0}毫秒----------", (standerTime - parallelTime));
26 }
27 Console.ReadKey();
28 }
C# Parallel类For循环与普通For循环耗时性能比较的更多相关文章
- Parallel类(简化Task 操作)
Parallel类 Parallel类是对线程的一个很好抽象.该类位于System.Threading.Tasks命名空间中,提供了数据和任务并行性. 1.用Parallel.For()方法循环 // ...
- 多线程之Parallel类
Parallel类是对线程的一个抽象.该类位于System.Threading.Tasks名称空间中,提供了数据和任务并行性. Paraller类定义了数据并行地For和ForEach的静态方法,以及 ...
- C# 并行任务——Parallel类
一.Parallel类 Parallel类提供了数据和任务的并行性: 二.Paraller.For() Paraller.For()方法类似于C#的for循环语句,也是多次执行一个任务.使用Paral ...
- 第九节:深究并行编程Parallel类中的三大方法 (For、ForEach、Invoke)和几大编程模型(SPM、APM、EAP、TAP)
一. 并行编程 1. 区分串行编程和串行编程 ①. 串行编程:所谓的串行编程就是单线程的作用下,按顺序执行.(典型代表for循环 下面例子从1-100按顺序执行) ②. 并行编程:充分利用多核cpu的 ...
- 转载 [深入学习C#]C#实现多线程的方式:使用Parallel类
简介 在C#中实现多线程的另一个方式是使用Parallel类. 在.NET4中 ,另一个新增的抽象线程是Parallel类 .这个类定义了并行的for和foreach的 静态方法.在为 for和 fo ...
- 数据与任务的并行---Parallel类
Parallel类是对线程的抽象,提供数据与任务的并行性.类定义了静态方法For和ForEach,使用多个任务来完成多个作业.Parallel.For和Parallel.ForEach方法在每次迭代的 ...
- 一、并行编程 - 数据并行 System.Threading.Tasks.Parallel 类
一.并行概念 1.并行编程 在.NET 4中的并行编程是依赖Task Parallel Library(后面简称为TPL) 实现的.在TPL中,最基本的执行单元是task(中文可以理解为"任 ...
- 【.Net】C#实现多线程的方式:使用Parallel类
简介 在C#中实现多线程的另一个方式是使用Parallel类. 在.NET4中 ,另一个新增的抽象线程是Parallel类 .这个类定义了并行的for和foreach的 静态方法.在为 for和 f ...
- [深入学习C#]C#实现多线程的方式:使用Parallel类
简介 在C#中实现多线程的另一个方式是使用Parallel类. 在.NET4中 ,另一个新增的抽象线程是Parallel类 .这个类定义了并行的for和foreach的 静态方法.在为 for和 f ...
- C# ——Parallel类
一.Parallel类 Parallel类提供了数据和任务的并行性: 二.Paraller.For() Paraller.For()方法类似于C#的for循环语句,也是多次执行一个任务.使用Paral ...
随机推荐
- Java创建TXT文件并写入 内容
public static void main(String[] args) { String filePath = "E:/" + "1.txt"; Stri ...
- 基于 Github Actions 自动部署 Hexo 博客
前言 前不久使用了 Hexo 搭建独立博客,我是部署在我的腾讯云轻量应用服务器上的,每次都需要 hexo deploy 然后打包.上传.解压和刷新 CDN,非常麻烦.我的服务器配置也不高 2C2G 无 ...
- D2C小练习
前端智能化现状及未来展望 简介 DEsign: Sketch,Photoshop ,Figma 起源:微软2017年, Design to code code: 前端 核心原理 design----& ...
- Linux从root切换某个用户时可能出现:-bash-4.1$
Linux从root切换某个用户时可能出现:-bash-4.1$ 如下所示:[root@server ~]# su - postgres-bash-4.1$ id postgresuid=26(pos ...
- ajax传递参数与controller接收参数映射关系
将ajax的参数传递至后台controller时,data 中的参数名要与controller中的形参保持一致. 前端ajax代码: 1 $.ajax({ 2 url:"/doLogin&q ...
- 关于 用fscanf读文件,把文件中用##分割的内容分开
今天呀,被学弟问了一个问题 文件里存的是"123##456##0##1644444.....##" 为什么用fscanf(fp, "%s##%s......", ...
- 全民开发!仓库管理者用无代码平台,搭建理想的WMS软件
货在哪儿? 我说过仓库管理不要依赖"老人",因为只有"他"知道货在哪怎么行?也不要完全依赖"系统",因为当前的"系统"并 ...
- super和访问权限修饰符
super()方法 构造方法中的super关键字 在java子类的构造方法中可以通过super关键字来调用父类的构造方法 super():访问父类中的无参构造函数 super(...)访问父类中的成员 ...
- linux学习系列--初识Linux系统
### 认识Linux- Linux是一种类UNIX的系统,Unix是1965年在贝尔实验室开发的一个项目,用来开发操作系统- Linux之父-Linus Torvalds在1991年10月5日,他在 ...
- 为美多商城(Django2.0.4)添加基于websocket的实时通信,主动推送,聊天室及客服系统
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_67 websocket是个啥? webSocket是一种在单个TCP连接上进行全双工通信的协议 webSocket使得客户端和服务 ...