我想知道这个 2003 年的代码是否仍然是最先进的?它是 C++ 中使用 PThreads 的消费者和生产者示例。
http://www.mario-konrad.ch/wiki/doku.php?id=programming:multithreading:tutorial-06
如果不是,那么在 C++ 中使用线程的现代方法是什么?
谢谢
我想知道这个 2003 年的代码是否仍然是最先进的?它是 C++ 中使用 PThreads 的消费者和生产者示例。
http://www.mario-konrad.ch/wiki/doku.php?id=programming:multithreading:tutorial-06
如果不是,那么在 C++ 中使用线程的现代方法是什么?
谢谢
是的,pthreads 库仍然用于线程。有一些更高级别的库(boost,或者如果你有一个兼容 c++ 11 的编译器,标准库)也会为你提供线程功能,尽管对于某些事情你仍然需要回退到普通的 pthread 调用。boost::thread 和 std::thread 库使用 pthread 库在支持 pthread 的操作系统上实现它们,因此即使使用这些库,您也是在间接使用 pthread。
所以我想简短的回答是肯定的,代码仍然有效,但现在还有其他选项可用。
另外作为旁注,我知道英特尔有他们的线程构建块可用,但我没有使用它。