तो मैं सोच रहा हूं कि एएसपीनेट एक स्थैतिक संपत्ति का दायरा कैसे सक्षम कर सकता है, जब (मेरे ज्ञान के लिए) asp.net बहु-थ्रेडेड होता है।HttpContext.Current एक बहु थ्रेडेड वातावरण में कैसे काम करता है?
- एक सिद्धांत यह है कि एएसपी.नेट लोग प्रत्येक अनुरोध के लिए एक अलग अपडोद बनाए रखते हैं ... लेकिन यह व्यवहार्य प्रतीत नहीं होता है।
- एक और सिद्धांत यह है कि वर्तमान विधि वर्तमान थ्रेड को देखती है, और उसके बाद कुछ हैशटेबल (या अन्य स्थिर स्टोरेज तंत्र) में http संदर्भ देखने के लिए इसका उपयोग करती है।
किसी भी तरह से, यह एक तकनीक है कि वास्तव में उपयोगी लगता है ... मैं इसे का उपयोग करना चाहते हैं, लेकिन निश्चित रूप से साझा राज्य कीड़े डिबगिंग जा नहीं करना चाहती: -/
भयानक, इसके लिए धन्यवाद ... थ्रेड मरने के बाद स्थैतिक उदाहरण साफ हो जाता है? –
यह ध्यान रखना महत्वपूर्ण है कि थ्रेडस्टैटिक उच्च-लोड परिदृश्य में विश्वसनीय नहीं है। ASP.NET थ्रेड के बीच अनुरोध संदर्भ स्विच करता है और HttpContext माइग्रेट करता है। किसी भी [थ्रेडस्टैटिक] पुराने धागे पर पीछे छोड़ दिया जाएगा, जो एक नया अनुरोध उठा रहा है। –
दिलचस्प सवाल ... विशेष रूप से यदि यह एक पूल धागा है जिसका पुन: उपयोग किया जा सकता है ;- मेरी सलाह: यदि आप इस तरह की चीज कर रहे हैं तो मैन्युअल रूप से साफ करें। –