C++多线程编程要用到哪些库?如何编译这些库?

 我来答
catm3
2010-10-06 · TA获得超过511个赞
知道小有建树答主
回答量:234
采纳率:100%
帮助的人:358万
展开全部
千万别以为现在的C++没有原生的多线程库

OpenMP 是一个多线程库,不过他还需要编译器的支持,好在现在绝大多数都已经支持(这个可能是目前最流行的原生多线程库了)

C++的标准头process.h(太老的没有,2002年后的基本都有)中有操作进程和执行环境的函数,能实现简单的进程级或线程级并行操作。
使用起来非常非常方便。windows平台的C语言编译工具也都有这个头,unix平台上的unistd.h跟这个头很相似,函数名与用法也基本一样。

还有一些其他的第三方多线程库,你可以网上搜搜,但是注意是否跨平台等问题

如果你要使用操作系统相关的多线程API,那么也就没什么选择余地,windows上只能用windows的多线程API (参考MSDN) unix同理

OpenMP的优点是跨平台,功能丰富强大(例如提供了各种锁、信号等),代码改动也比较小,使用起来也非常方便快捷。缺点是没有像直接用系统API时透明感,毕竟使用系统API时,程序员完全控制了逻辑,非常直观,当然这也带来了错误风险和代码复杂度
netkinghancong
2010-10-05 · TA获得超过1592个赞
知道小有建树答主
回答量:823
采纳率:100%
帮助的人:500万
展开全部
c++和c本身都没有标准多线程实现。

但是各个厂家都扩展了c,c++,例如微软就有自己的多线程函数库。

如果没有标准库的话,为什么不把这样重要的内容加入到标准中来呢?
c的发明很早,后续开发c编译器的厂家只能发展自己的扩展库,你不能说你自己的扩展库就是一个标准,因为那是和版权问题相关的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
muyejingefeng
2010-10-05 · TA获得超过348个赞
知道小有建树答主
回答量:287
采纳率:0%
帮助的人:0
展开全部
C++中写多线程程序还是用CreateThread函数吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式