यानी, क्या निम्न बहुमत वाले वातावरण में भी सही ढंग से निष्पादित होने की उम्मीद की जाएगी?सी ++ में, आदिम प्रकारों के स्थैतिक प्रारंभिक स्थिर मान थ्रेड-सुरक्षित हैं?
int dostuff(void) {
static int somevalue = 12345;
return somevalue;
}
या यह एक से अधिक थ्रेड यह कॉल करने के लिए संभव है, और एक कॉल वापस जाने के लिए जो कुछ भी कचरा &somevalue
पर था से पहले निष्पादन के लिए शुरू किया?
स्थिर स्थिरांक एक विकल्प नहीं है पर निर्भर करने लगता है? –
स्थिरता यहां काम नहीं करेगी क्योंकि int बाद में संशोधित हो जाएगा (जबकि ज्ञात-से-वैध-म्यूटेक्स आयोजित किया जाता है।) मेरी आंत महसूस करना था कि निष्पादन शुरू होने से पहले किसी भी सिन कंपाइलर कम से कम शून्य-फ़ंक्शन स्कोप पर स्थिर पूर्णांक प्रारंभ करेगा (इस मामले में, यह मेरे लिए काफी अच्छा है।) यह ऐसी चीज है जो यात्रा करना आसान है, हालांकि। –
तकनीकी रूप से नहीं। लेकिन जीसीसी के पास यह स्पष्ट करने के लिए एक स्पष्ट पैच है कि यह एक बहुप्रचारित वातावरण में काम करता है। –