समस्या का विवरण स्वयं ही सरल है। मैं सी ++ 11 में std :: थ्रेड लाइब्रेरी के अंतर और बूस्ट :: थ्रेड लाइब्रेरी का परीक्षण कर रहा हूं।std :: thread :: hardware_concurrency() और boost :: thread :: hardware_concurrency() का उपयोग करके कोई अंतर क्यों है?
इनमें से उत्पादन:
0
4
कि क्यों है:
#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;
}
मुझे अलग परिणाम देता है?
पीएस: जीसीसी पैकेज का संस्करण 4.6.2-1.fc16 (x86_64) है। मैं
g++ test.cc -Wall -std=c++0x -lboost_thread-mt -lpthread
पर लागू नहीं किया गया है लेकिन वास्तव में बढ़ावा देता है :: धागा सही जानकारी 4 प्रदर्शित कर सकता है, जबकि सी ++ 11 मुझे 0 देता है ... – derekhh
@ डेरेख: इसकी बहुत संभावना है आपका सी ++ 11 कार्यान्वयन सिर्फ एक कंकाल है और वास्तव में – Dani
@Dani नहीं काम करता है: मैं g ++ 4.6.2 का उपयोग कर रहा हूं ... – derekhh