मैं एक अजीब छोटी समस्या में भाग गया है।कैप्चर अपवाद कैसे शून्य हो सकता है (NullReferenceException नहीं)?
निम्नलिखित कोड में मैं समझ नहीं सकता कि e
null
हो सकता है;
try
{
//Some Code here
}
catch (Exception e)
{
//Here e is null
}
जहाँ तक मुझे पता है, throw null
throw new NullReferenceException()
में परिवर्तित हो जाएगा।
समस्या मल्टीथ्रेडिंग से संबंधित प्रतीत होती है, क्योंकि एक और थ्रेड को हटाने के लिए यह भी ठीक लगता है। या कम से कम मैंने केवल यह देखा है जब उपरोक्त कोड एक नए धागे में चलाया जाता है। पूरा कार्यक्रम कई धागे का उपयोग करता है और थोड़ा जटिल है।
वैसे भी मेरा सवाल है, e
कैसे शून्य हो सकता है? - उम्मीद है कि इसका उत्तर इस समस्या के स्रोत को खोजने में मदद कर सकता है।
संपादित मैं यह खोज की है, क्योंकि यह पकड़ बयान में एक NullReferenceException का कारण बना, और डीबगर मैं एक ही बात को देखने का उपयोग कर।
संपादित 2 ओपन VisualStudio अगले दिन फिर से करने की कोशिश की, कोई कोड परिवर्तन और अब एक ही पकड़ वाक्यांश "कहा जाता है" है लेकिन इस बार ई अशक्त नहीं है। ऐसा लगता है कि यह एक वीएस गड़बड़ था।
ऐसा लगता है जैसे आप पहले से ही अपनी उंगली को समस्या पर डाल देते हैं। आपको सीधे चलने की जरूरत है। –