写点什么

.NET 并行扩展之模式与范例

  • 2010-05-22
  • 本文字数:685 字

    阅读完需:约 2 分钟

虽然从 2007 年开始微软致力于.NET 的并行扩展,但针对.NET 4.0 的多项功能仍未充分实现。有些内部框架的功能“过于专属”,而其它功能则有利于测试与用户反馈。 Stephen Toub 提到:

所幸的是大部分案例中,我们能够基于.NET 4 提供的并行架构与.NET 4 类型和方法来实现这项功能,并在其它案例中使用.NET 4 提供的扩展功能,让开发人员能清晰地实现独立的自定义功能。久而久之,我们收集了大量的案例,我们选择把 ParallelExtensionsExtras 作为.NET 4 范例的一部分进行公布,大家可从 http://code.msdn.microsoft.com/ParExtSamples 下载。

代码范例涵盖了多种不同的功能。以下列出大家关心的部分功能:

IProducerConsumerCollection 实现了 BlockingCollection 封装。该接口是用于传统厂商与客户解决方案的线程安全集合。它并不包含在.NET 4.0 当中,因为不同应用程序对 BlockingCollection 有不同的需求。

对于处理 COM 组件所需的单线程单元,微软提供了 StaTaskScheduler 。StaTaskScheduler 的入门版本简单易用,它启用若干预定义的 STA 线程并等待处理任务。微软推荐用户使用本地线程存储来给每个工作线程实例化 COM 对象。

对于 Rx Framework 感兴趣的开发人员,可以参考 Task.ToObservable 扩展方法。它可订阅 Task 的结果。如果该订阅在任务完成之前就被丢失,那么该任务也会被取消。

一个相对复杂的解决方案就是 ReductionVariable 。它包含一些值,与实例或线程一一对应,在归约操作中使用。基于本地线程的存储,减少了它在工作线程间同步的比例。归约操作一旦完成,就可以对这些值进行枚举来生成最终结果。

查看英文原文: Patterns and Samples for .NET Parallel Extensions

2010-05-22 05:111741
用户头像

发布了 87 篇内容, 共 21.6 次阅读, 收获喜欢 1 次。

关注

评论

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

MES与MOM的区别和联系

高端章鱼哥

低代码 mes 制造业生产管理系统

北京站|活动预告:图创价值 · 图技术 + AI 在金融行业的应用

悦数图数据库

图数据库

什么是DevOps监控以及如何在组织中实施?

互联网工科生

DevOps 运维工具

NFTScan 获得 SpaceID Grant 资金支持!

NFT Research

NFT\

这个夏天,追光动画在阿里云上“绘出”《长安三万里》

新云力量

长安三万里

悦数图数据库v3.5.0发布:查询性能大幅提升,为智能决策和 AI 大模型应用提速

悦数图数据库

AI 图数据库 大模型

参加SAFe大规模敏捷企业级培训

顿顿顿

safe 大规模敏捷

一张表实现短视频"评论区"完整功能

北桥苏

从Istio在CNCF毕业,看服务网格的架构变迁

博文视点Broadview

无需点跟踪,克服DragGAN缺陷!中科大联合上海AI Lab发布FreeDrag:可稳定拖动语义内容

Openlab_cosmoplat

GoFrame v2.5 版本发布,企业级 Golang 开发框架

王中阳Go

Golang GoFrame 新特性

“拿捏”Kubernetes,智领云让数据应用标准化

智领云科技

云原生 云原生大数据平台 智领云 云原生K8s大数据平台

彻底搞懂Java继承的五种用法

互联网工科生

Java 编程语言 JNPF

低代码项目实战第一弹!2人14天快速构建电商企业供应链管理平台(一)

优秀

低代码 供应链 供应链管理

解码 LangChain | LangChain + GPTCache =强强联合

Zilliz

向量数据库 LLM gptcache #LangChain langchain

开发运维一体化平台 应用研发全生命周期管理

力软低代码开发平台

来DTT直播间,带你了解openGemini差异化竞争力

华为云开源

开源 时序数据库

Nautilus Chain NautDID NFT 将上主网,Layer3 数字身份时代开启

威廉META

PEPE的二代分叉币PEPEP空投和预售正式开启

新消费日报

真正的云原生大数据平台,让Kubernetes又牛了一把

智领云科技

Kubernetes 云原生大数据平台 智领云 云原生K8s大数据平台

.NET并行扩展之模式与范例_.NET_Jonathan Allen_InfoQ精选文章