加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

Windows上的C/C++并行API

发布时间:2020-12-14 05:51:44 所属栏目:Windows 来源:网络整理
导读:我们正在为 Windows平台开发一些东西,我们现在想利用PC中存在的多个核心. 我知道在VS2010中,有Concurrency Runtime.但它仍然在Beta上.与此同时,我们现在确实需要发布质量代码,对于允许以后平滑过渡的API来说,什么是一个很好的选择.其他建议? 解决方法 我知
我们正在为 Windows平台开发一些东西,我们现在想利用PC中存在的多个核心.

我知道在VS2010中,有Concurrency Runtime.但它仍然在Beta上.与此同时,我们现在确实需要发布质量代码,对于允许以后平滑过渡的API来说,什么是一个很好的选择.其他建议?

解决方法

我知道:

> Intel Thread Building Block library(开源)
> C 0x线程库支持(将来某个时候跨平台)
> Just Software C 0x线程库的实现 – 允许您在vs 2008中使用新的c线程库.
> OpenMP – 如今构建了大多数C编译器,包括VS 2008.
> pthreads for win32 – POSIX线程,因此它们是任何POSIX投诉操作系统的跨平台.
> WIN32线程API

我会推荐英特尔线程构建模块,因为它比大多数其他多线程API更高级别的抽象.它也是开源的,因此您可以下载并查看其中的一些内容是如何完成的.升级版本意味着使用Windows Concurrency Runtime(如果可用).我还读到英特尔已提交TBB以包含在C标准中.

pthreads和Win32 API是较低级别的原语,需要您更好地理解多线程环境.如果您知道自己在做什么,这些工具可以让您获得最大的控制权.

我还没有使用新的c线程支持,但它们看起来与pthreads处于同一级别或更高级别. Just Software有一些关于如何使用新的c线程库的有趣articles.

我只读过有关OpenMP的内容,我不确定它的使用方式.

您可能需要阅读Joe Duffy’s Concurrent Programming on Windows书籍.

Herb Sutter还在“有效并发”标题下发布了大量文章.

希望有所帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读