OceaBase开发者大会落地上海!4月20日共同探索数据库前沿趋势!报名戳 了解详情
写点什么

.NET 4 特性聚焦:并行编程

  • 2008-10-20
  • 本文字数:649 字

    阅读完需:约 2 分钟

通用语言运行时(Common Language Runtime,CLR)以锁、线程和线程池的形式为并行编程提供基本的支持。不过,随着多核 CPU 重要性的逐步增加,大家又重燃构建高级并行编程函数库的热情。

很多人现在都投身于函数式编程的世界,由于它们具有不可变的对象,以及与生俱来的线程安全属性。基于 F#语言的 Haskell OCaml 可以归入此类。其他例如 Erlang 这样倍受大家偏爱的语言,是基于消息传递和轻量级进程的。除了支持 F#外,微软也尝试了几种不同的方式,以需求并行编程的准确提炼。

最先公布的产品是并行 LINQ( Parallel LINQ ),也即所谓的 PLINQ。类似对 SQL 的处理一样,并行的版本通过语言本身来处理,而无需开发人员的努力。通过把 AsParallel 附加到查询上,就能正常工作了。不过正如 SQL 一样,在这里通常还是需要设定很多额外的选项。

下一个出现的是结构化并行性语法( Structured Parallelism ),这种技术会让人想起 OpenMP。不过它不像 OpenMP 那样,使用编译器指令标记;微软的解决方案是基于匿名委托。最直观的反应就是代码只需作细微的修改;在“for”语句内的代码块,可以作为参数传递到“Parallel.For”函数中。

如果代码无法轻易地表示为查询或迭代循环,则可以选择任务并行库( Task Parallel Library )。乍看之下,它似乎是另外一种线程池,但它却支持任务之间的父子关系。

为了对应用程序进行更好地控制,微软提供了协调一致的数据结构( Coordination Data Structures )。它们为未来提供了线程安全的集合以及改良过的同步对象。

查看英文原文:.NET 4 Feature Focus: Parallel Programming

2008-10-20 23:521004
用户头像

发布了 254 篇内容, 共 53.4 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

ARTS打卡 第29周

引花眠

微服务 ARTS 打卡计划

进入最佳汇报状态的反思

JiangX

28天写作

算法训练营总结

Geek_ac4080

创业失败启示录|舌尖辨茶

阿萌

28天写作 创业失败启示录

工具词典: MIT

lidaobing

MIT 28天写作 Slidepad Roam Research

架构师系列 16 思维导图

桃花原记

终于用我的那个二手显卡搭建好了TF2的环境

IT蜗壳-Tango

七日更

腾讯会议增长背后的技术实践

李忠良

28天写作

机器学习·笔记之:Gradient Descent For Linear Regression

Nydia

【初级】个人分享Vue前端开发教程笔记

我是哪吒

程序员 面试 Vue 大前端 2月春节不断更

28天瞎写的第二百三十四天:炒肝你吃得惯吗?

树上

28天写作

架构师系列 15 系统设计图

桃花原记

产品经理训练营-第三周学习总结

月亮 😝

第5周课后练习-技术选型一

潘涛

架构师训练营 4 期

PMI 项目管理认证体系

Ian哥

28天写作

与前端训练营的日子 --Week14

SamGo

学习

为什么太过努力有时候也会造成问题

熊斌

学习方法 个人成长 28天写作

如何完成一次快速的查询

xcbeyond

MySQL ES 优化 MySQL优化 28天写作

个人隐私之后期展望

张老蔫

28天写作

关于上篇连接中的人的补充说明

孙苏勇

产品

产品经理训练营-第三周作业

月亮 😝

第5周课后总结-技术选型一

潘涛

架构师训练营 4 期

第10周作业&总结

胡益

壁纸欣赏

小马哥

七日更

管理笔记[3]:各得其所,各尽其才

L3C老司机

极客大学产品经理训练营 解决方案的设计与积累 第6课总结 John 易筋 ARTS 打卡 Week 37

John(易筋)

ARTS 打卡计划 极客大学产品经理训练营 解决方案的设计与积累

写一个玄幻的序章——梦想种植「幻想短篇 24/28」

道伟

28天写作

一致性hash算法

MR.X

第十周学习总结

Binary

java import 导入包时,我们需要注意什么呢?

看山

Java import

创业公司如何做技术品牌? | 视频号28天(25)

赵新龙

28天写作

.NET 4特性聚焦:并行编程_.NET_Jonathan Allen_InfoQ精选文章