विजुअल स्टूडियो 2017 (अचानक अचानक) पर सभी अपवादों को तोड़ रहा है। इसका मतलब है, अगर मैं उन्हें अपवाद सेटिंग्स में निष्क्रिय कर देता हूं (डीबगिंग करते समय CTRL + ALT + E दबाकर), डीबगर अभी भी उन पर टूट जाता है। मुझे गीले नहीं पता है यह सिर्फ वीएस का एक बग है, मैं नहीं बदल सकता और इसलिए इसके साथ रहना, या गीला होना इसके लिए एक आसान समाधान है।वीएस 17 सभी अपवादों पर तोड़ने
और पर टूट जाता है वी.एस. इस अपवाद:
वैसे, मैं भी करने की कोशिश की है कि सुंदर ऋण (कुछ नहीं होता है, तो मैं इसे प्रेस) या एक असंभव स्थिति जोड़ना (वीएस अभी भी अपवाद पर तोड़ दिया)।
मैं भी है, जो मैं पहले इसे निष्क्रिय (बस उन्हें फेंक कर) अन्य अपवाद का परीक्षण किया है, और वे के रूप में अच्छी फेंक दिया हो और मैं अन्य परियोजनाओं, जहां यह रूप में अच्छी तरह दिखाई दिया में एक ही मुद्दा परीक्षण किया:
मैं वास्तव में भी एक कोशिश पकड़ बयान में पूरे सामान डाल लेकिन वी.एस. अभी भी टूट जाता है:
InitializeComponent();
try
{
var t = new Thread (() =>
{
while (!IsHandleCreated) {} //It breaks here (similiar to the screenshots)
while (true)
Invoke (new Action (() => Size = new Size()));
});
while (true)
{
t.Start();
Thread.Sleep (100);
t.Abort();
}
}
catch (ThreadAbortException) { }
यह मेरा पीसी पर अन्य IDEs (राइडर) की तरह में दिखाई नहीं देता और बनाम में अन्य पीसी पर occurr नहीं है यह हमेशा मेरे पीसी पर नहीं होता था, यह हाल ही में शुरू हुआ और केवल डीबगिंग मोड में। और अगर मैं निष्पादन जारी रखता हूं (F5 के साथ) यह सामान्य रूप से सामान्य रूप से जारी रहता है।
संपादित जैसा कि मैंने कोशिश पकड़ धागा अंदर यह थोड़ा अलग व्यवहार डाल (मैं यहाँ में चित्रों डालने के लिए माफी चाहता हूँ, लेकिन मुझे लगता है कि वे इस मामले में अधिक अर्थपूर्ण हैं):
कोई भी इस व्यवहार को समझाता है?
EDIT कैच स्टेटमेंट के अंत में फिर से तोड़ने के लिए ThreadAbortExceptions
के लिए सामान्य लगता है। हालांकि, वीएस को अभी भी इस अपवाद पर तोड़ना नहीं चाहिए।
साइड नोट के रूप में: आपका प्रयास पकड़ बनाया गया थ्रेड के अंदर होना चाहिए, वर्तमान में आपका प्रयास पकड़ यूआई थ्रेड पर है और पकड़े जाने के लिए कोई अपवाद नहीं है ... –
@ एमकेज़ेमखरी मैंने अपना प्रश्न संपादित किया – MetaColon
देखो - कभी-कभी इस तरह के मामलों में बग को खोजने और समझाने का प्रयास करने में बहुत महंगा समय होता है जहां आप इसे "सामान्य" तरीके से पुन: पेश नहीं कर सकते हैं। (1) रीबूट करने का प्रयास करें और (2) अपने पिछले कोड पर वापस लौटें और उस बिंदु तक बनाएं। हाँ हाँ मुझे पता है कि मेरी टिप्पणी एक "जवाब" नहीं है, लेकिन आप इस बात को आसानी से ट्रैक करने के लिए घंटों और दिन व्यतीत कर सकते हैं - बस आगे बढ़ने के लिए बेहतर। –