डिबगिंग (यह बहुत C# UnhandledException from another thread keeps looping के समान दिखता है, लेकिन यहाँ अपवाद पकड़ने की कोशिश कर नहीं कर रहा हूँ, बस कुछ लॉग इन करने का मौका मिलता)दृश्य स्टूडियो क्यों पाशन है जब UnhandledException घटनाओं
मैं कुछ बहुत ही सरल सी # कोड है
class Program
{
static void Main(string[] args)
{
AppDomain currentDomain = AppDomain.CurrentDomain;
//currentDomain.UnhandledException += new UnhandledExceptionEventHandler(currentDomain_UnhandledException);
currentDomain.UnhandledException += (sender, eventArgs) =>
{
var exception = (Exception) eventArgs.ExceptionObject;
Console.WriteLine("Unhandled exception: " + exception.Message);
};
throw new AccessViolationException("Bleurgh");
}
}
यह बर्ताव करता है के रूप में मैं कंसोल से उम्मीद:
Unhandled exception: Bleurgh
Unhandled Exception: System.AccessViolationException: Bleurgh
at UnhandledExceptions.Program.Main(String[] args) in c:\code\sandbox\UnhandledExceptions\UnhandledExceptions\Program.cs:line 20
एक UnhandledException ईवेंट हैंडलर सेट है, तो एक अपवाद फेंकता लेकिन जब मैं इसे विजुअल स्टूडियो में डीबग करने का प्रयास करता हूं तो यह एक लूप में प्रवेश करता है, इवेंट हैंडलर में जाता है और फिर अपवाद को फिर से खोलने के लिए बाहर निकलता है।
वही बात तब होती है जब मैं हैंडलर को एक विशिष्ट स्थैतिक विधि के रूप में व्यक्त करता हूं।
कोई विचार क्या चल रहा है? और .NET 4.
संभावित डुप्लिकेट: [प्रथम] (http://stackoverflow.com/q/11469826/395718), [दूसरे] (http://stackoverflow.com/q/1536954/395718), [तीसरे] (http: //stackoverflow.com/q/164433/395718)। – Dialecticus