के लिए थ्रेड स्थानीय संग्रहण मेरे पास एक बहुत पुरानी लेकिन बहुत बड़ी लाइब्रेरी है जिसे मैं सी # कक्षा पुस्तकालय में परिवर्तित करने पर विचार कर रहा हूं। मौजूदा पुस्तकालय टीएलएस में संग्रहीत कई वैश्विक चर का उपयोग करता है। सी # में ग्लोबल वेरिएबल्स की कोई वास्तविक अवधारणा नहीं है, लेकिन एक वर्कअराउंड ग्लोबलवार जैसे कुछ स्टैटिक क्लास का उपयोग करना है और उन्हें सभी को इस वर्ग में डाल देना है ताकि उन्हें ग्लोबलवार.xxxxxxसी # कक्षा पुस्तकालय
के माध्यम से एक्सेस किया जा सके, हालांकि, मेरी सोच यह है कि यह टूट जाएगा ग्लोबलवायर क्लास के रूप में परिवर्तित होने वाले सभी मौजूदा कोड सामान्य वैश्विक वर्ग होंगे और प्रति थ्रेड स्टोरेज नहीं होंगे। क्या इन ग्लोबल्स को प्रति थ्रेड होने का कोई तरीका है? यानी सी # में __declspec (थ्रेड) स्थिर के बराबर क्या है?
मुझे इस बिंदु पर जोड़ना चाहिए कि मुझे वैश्विक चर से नफरत है। मुझे लगता है कि वे अक्सर खराब डिजाइन का परिणाम होते हैं। हालांकि, कड़े समय प्रतिबंधों के कारण, चरण एक पुस्तकालय को न्यूनतम झगड़े के साथ सी # में परिवर्तित करना है और फिर चरण 2 उन्हें ठीक से फिर से डिजाइन करना होगा।
हेहे, आप हमें इतालवी भाषा सिखाने पर जोर देते हैं :-) –
@xanatos 'थ्रेडस्टैटिक एट्रिब्यूट केवल स्थिर फ़ील्ड पर उपयोग किया जा सकता है 'हमेशा सत्य नहीं होता है। लोग प्रति-थ्रेड-प्रति-आवृत्ति चर घोषित करना चाहते हैं –
मेरा इतालवी इतना अच्छा नहीं है लेकिन मजाक कर रहा है, मदद के लिए बहुत धन्यवाद। हालांकि मैं थ्रेडपूल का उपयोग करने के लिए अंतिम पैराग्राफ के बारे में चिंतित हूं। मुझे नहीं लगता कि यह पहले एक मुद्दा होगा लेकिन यह ऐसा कुछ है जिसे भविष्य में विचार करने की आवश्यकता हो सकती है। – Jonnster