問題描述本身非常簡單。我正在測試C++ 11和boost :: thread庫中std :: thread庫的差異。爲什麼使用std :: thread :: hardware_concurrency()和boost :: thread :: hardware_concurrency()會有區別?
這些輸出:
#include <iostream>
#include <thread>
#include <boost/thread.hpp>
int main() {
std::cout << std::thread::hardware_concurrency() << std::endl;
std::cout << boost::thread::hardware_concurrency() << std::endl;
return 0;
}
給了我不同的結果:
0
4
這是爲什麼?
PS:gcc軟件包的版本是4.6.2-1.fc16(x86_64)。我使用
g++ test.cc -Wall -std=c++0x -lboost_thread-mt -lpthread
但實際上boost :: thread可以顯示正確的信息4,而C++ 11給我0 ... – derekhh 2011-12-16 21:38:15