var list = new List<string> {
"https://www.baidu.com","https://associates.amazon.cn/","https://www.amazon.cn","https://www.aliyun.com","http://www.answers.com/"
};
Stopwatch sw1 = new Stopwatch();
sw1.Start();
Parallel.For(, list.Count, i => {
WebClient myWebClient = new WebClient();
Stopwatch sw = new Stopwatch();
sw.Start();
myWebClient.OpenRead(list[i]);
sw.Stop();
Console.WriteLine("获取" + list[i] + " 耗时" + sw.ElapsedMilliseconds);
});
sw1.Stop();
Console.WriteLine("执行完成 共耗时"+sw1.ElapsedMilliseconds);
//Console.ReadKey(); //也可以用foreach
Parallel.ForEach(list, i =>
{
Console.WriteLine(i);
});

运行结果:

获取https://www.baidu.com 耗时171
获取https://www.aliyun.com 耗时214
获取https://www.amazon.cn 耗时334
获取https://associates.amazon.cn/ 耗时378
获取http://www.answers.com/ 耗时1249
执行完成 共耗时1259
https://www.baidu.com
http://www.answers.com/
https://associates.amazon.cn/
https://www.aliyun.com
https://www.amazon.cn
请按任意键继续. . .

c# Parallel 并行运算 异步处理的更多相关文章

  1. ahjesus C# 4.0 Parallel 并行运算

    Parallel.For - for 循环的并行运算 Parallel.ForEach - foreach 循环的并行运算 Parallel.Invoke - 并行调用多个任务 Task - 任务,基 ...

  2. Parallel并行运算实例

    并行运算Parallel,是.net 4.0版本里添加的新处理方式,主要充分利用CPU.任务并发的模式来达到提高运算能力.简单理解为每个CPU都在处理任务,而不会让它们空闲下来. 直接看实例: nam ...

  3. parallel方法 异步并行执行

    Promise提供了all方法, 但是状态只有2种, 第一种是所有promise实例都成功则返回值组成一个数组,传递给p的回调函数: 第二种是有一个实例被rejected,状态就变成rejected, ...

  4. Task/Parallel实现异步多线程

    代码: #region Task 异步多线程,Task是基于ThreadPool实现的 { //TestClass testClass = new TestClass(); //Action<o ...

  5. 深入了解C#(TPL)之Parallel.ForEach异步

    前言 最近在做项目过程中使用到了如题并行方法,当时还是有点犹豫不决,因为平常使用不多, 于是借助周末时间稍微深入了下,发现我用错了,故此做一详细记录,希望对也不是很了解的童鞋在看到本文此文后不要再犯和 ...

  6. c# Parallel并行运算

    string str = ""; DataTable dt=new DataTable(); dt.Columns.Add("name", typeof(Sys ...

  7. 学习笔记——并行编程Parallel

    Parallel 并行运算 参考资料:http://www.cnblogs.com/woxpp/p/3925094.html 1.并行运算 使用Parallel并行运算时,跟task很像,相当于tas ...

  8. 理解Promise

    一.Propmise基本用法 Promise用于发送一个异步完成的结果,是替代回调函数的另一种选择.可以把Promise理解为一种异步函数. 以下函数通过一个Promise来异步地返回一个结果 fun ...

  9. 异步和多线程,委托异步调用,Thread,ThreadPool,Task,Parallel,CancellationTokenSource

    1 进程-线程-多线程,同步和异步2 异步使用和回调3 异步参数4 异步等待5 异步返回值 5 多线程的特点:不卡主线程.速度快.无序性7 thread:线程等待,回调,前台线程/后台线程, 8 th ...

随机推荐

  1. 用margin实现两列布局中的自适应列

    <div id="wrapper"> <div id="col1"> "fixed" </div> &l ...

  2. Python ZipFile模块详解(转)

    Python zipfile模块用来做zip格式编码的压缩和解压缩的,zipfile里有两个非常重要的class, 分别是ZipFile和ZipInfo, 在绝大多数的情况下,我们只需要使用这两个cl ...

  3. 20145234黄斐《Java程序设计》第十周

    网络编程 网络概述 概述 网络编程技术是当前一种主流的编程技术,随着联网趋势的逐步增强以及网络应用程序的大量出现,所以在实际的开发中网络编程技术获得了大量的使用. 计算机网络概述 IP地址: 为了能够 ...

  4. My97DatePicker:开始时间和结束时间的最大间隔为1个月30天,并且不大于当前时间(3种方法)

    问题的背景 在之前做Web项目的时候,开始时间和结束时间,只有2个要求: 1.开始时间必须小于等于结束时间,不能超过当前时间. 2.结束时间必须大于等于开始时间,不能超过当前时间. 由于开始时间不大于 ...

  5. 4320: ShangHai2006 Homework

    4320: ShangHai2006 Homework 链接 分析: 分块.对权值模数进行分块,模数小于$\sqrt V$的($V$为权值上界),暴力处理. 模数大于$\sqrt V$的,设模数是k, ...

  6. CentOS7中使用阿里云镜像

    之前因为下载Docker镜像很慢所以用了一家国内的镜像DaoCloud,今天要用的是阿里云的镜像库. 首先要开通了阿里云开发者帐号,地址 : https://dev.aliyun.com/search ...

  7. Tomcat 下载与安装

    下载地址:http://tomcat.apache.org 根据自己电脑的系统下载Core节点下不同的版本.   Tomcat文件目录结构 bin:存放启动与关闭Tomcat的脚本文件 conf:存放 ...

  8. django套用模板404报错小结

    首先,我的项目名是MyProject.每次当我运行,然后测试页面的时候,总是弹出 其实根据stackoverflow上某大佬的解释大意就是在setting.py和urls.py的匹配上出了问题 此处放 ...

  9. 【10.13】Bug Bounty Write-up 总结

    今天惯例邮箱收到了Twitter的邮件提醒有新的post,这种邮件每天都能收到几封,正好看到一个Bug Bounty的write up,比较感兴趣,看起来也在我的理解范围之内,这里对这篇write u ...

  10. 微信小程序日记(一)

    一.基础知识(目录与配置) (1)标签 小程序的view相当于HTML的div标签一样,作占位 (2)每一个页面都需要在app.json里面注册,例如: { { "pages": ...