मैं संदर्भ काउंटर के लिए std::atomic
एस का उपयोग कर एक सूचक/कमजोर सूचक तंत्र लागू कर रहा हूं (जैसे this)। एक मजबूत एक करने के लिए एक कमजोर सूचक परिवर्तित करने के लिए मैं atomically कोसी ++ वृद्धि एसडी :: atomic_int अगर nonzero
- जांच करता है, तो मजबूत संदर्भ काउंटर अशून्य
- यदि ऐसा है तो है की जरूरत है, को बढ़ा देते यह
- बताती है कि कुछ बदल गया है या नहीं।
क्या std::atomic_int
का उपयोग करके ऐसा करने का कोई तरीका है? मुझे लगता है कि इसे compare_exchange
में से एक का उपयोग करना संभव है, लेकिन मैं इसे समझ नहीं सकता।
'std :: shared_ptr' परमाणु संदर्भ काउंटर का उपयोग करता है, तुम्हें पता है। आप हमेशा स्रोत की जांच कर सकते हैं। – Pubby
"पता है कि कुछ बदल गया है" भाग का क्या अर्थ है? – inf
चाहे यह nonzero था == चाहे वह वृद्धि हुई हो। –