फ़ंक्शन InterlockedIncrement के बारे में पढ़ने के दौरान मैंने यह टिप्पणी देखी कि वेरिएबल पास 32-बिट सीमा पर गठबंधन होना चाहिए। आम तौर पर मैं कोड है जो इस तरह InterlockedIncrement का उपयोग करता है देखा है:इंटरलाक्ड इंस्ट्रूमेंट उपयोग
class A
{
public:
A();
void f();
private:
volatile long m_count;
};
A::A() : m_count(0)
{
}
void A::f()
{
::InterlockedIncrement(&m_count);
}
मल्टी-प्रोसेसर सिस्टम में ठीक से ऊपर कोड काम करता है या मैं इस के लिए कुछ और ध्यान रखना चाहिए?