C#并行任务Parallel

我们知道,在计算机执行程序的时候,大多数情况下都是串行执行,也即一个任务完成后在接着运行下一个任务,当然有用到过线程Thread,或者线程池ThreadPool,还有就是Task.这次我们认识一个东西,他叫Parallel,这个类是微软在.net4.0中推出的,其在命名空间System.Threading.Tasks中.其基本作用是提供并行执行程序,针对多核cpu有较好的效果,单核无效.

Parallel和线程的区别是;

线程使用cpu资源的时候可能将任务分配到一个核心上,对于多核cpu来说,可能的结果是cpu一个核心占用率很高,其他核心闲置.

使用Parallel对于多任务来说,可以均衡各个核心的使用率,达到各个核心负载均衡的目的,同时提高程序的处理的速度,优化程序的效率.

Parallel中有几个常用的方法For,ForEach,Invoke.

Invoke:主要用于任务的并行

For方法,主要用于处理针对数组元素的并行操作(数据的并行

Foreach方法,主要用于处理泛型集合元素的并行操作(数据的并行)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值