微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C中的多线程在哪里开始?

我想开始在C学习多线程.我也在 Java中学习.在 Java中,如果我编写一个使用多线程的程序,它将在任何地方工作.但是在C中,多线程不依赖平台特定的API?如果是这样,那似乎妨碍了可移植性.

如何在C中执行多线程而不会导致可移植性问题? boost的thread库是一个很好的解决方案?

作为旁注 – 如何实现多线程作为图书馆?这不是编译器必须做的吗?

解决方法

如果您没有支持 C++0x的编译器(例如可用于visual studio c 2010),请使用boost线程. (除非你使用一个已经支持线程的框架,否则的话你不会问这个问题).这些提升线程成为全新C的标准.在此之前,C本身没有意识到线程.

如果您想了解并行编程中的其他方面,TBB Threading Building Blocks也许对您而言很有趣.

关于Qt:如果你只想要线程支持,它是完全的overkill.从编译到结果的往返行程时间很慢.这是真的很好的设计思想.但不是官方的标准,像C 0x线程从boost.所以我不会把它作为第一选择.

原文地址:https://www.jb51.cc/c/113794.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐