2013-05-27 6 views
11

मैंने सी ++ प्रोजेक्ट के प्रदर्शन की जांच की और परिणाम मेरे लिए इतना स्पष्ट नहीं हैं।
std::_lockit::int() में विशेष नमूने का 20% से अधिक है। यह क्या करता है और मैं इसका उपयोग करने से कैसे बचूं? मेरे पास std::vector के साथ बहुत सी चीजें बनाई गई हैं, इसलिए आशा है कि ये जुड़े हुए हैं।क्या std :: _ लॉकिट करता है?

+0

आप सभी अनुकूलन और अक्षम डिबगिंग सक्षम था? –

+0

हां मैं/ऑक्स बनाने के लिए उपयोग करता हूं। –

+3

ठीक है, यह एक माइक्रोसॉफ्ट-विशिष्ट आंतरिक चीज है ... संकलक मैनुअल से परामर्श करने के लिए बेहतर हो सकता है। मानक सी ++ के साथ ऐसा करने के लिए कुछ भी नहीं है। –

उत्तर

9

_ लॉकिट आमतौर पर माइक्रोसॉफ्ट के एसटीएल के कार्यान्वयन में इसे डीबग करने के लिए उपयोग किया जाता है। उत्पादन वातावरण में इन्हें बड़ी संख्या में तत्वों वाले कंटेनरों पर फिर से सक्रिय करते समय महत्वपूर्ण प्रदर्शन बाधाओं का कारण हो सकता है।

डिबगिंग iterators अपने कोड, या दृश्य स्टूडियो परियोजना संपत्तियों में मैक्रो _HAS_ITERATOR_DEBUGGING और _SECURE_SCL0 के रूप में परिभाषित करते हुए निष्क्रिय किया जा सकता।

संबंधित: Unnecessary locking in STL? (Visual C++ Express)

संबंधित मुद्दे