Why doesn't .NET register stack trace for StackOverflow exceptions?

If I write this:

class Program
{
    static void Main(string[] args)
    {
        throw new Exception("lol");
    }
}

and run exe from the command line, I will get two entries in the event log. One of them is an application error, which says that there was an unhandled exception, and the other contains a stack trace with a source like .NET Runtime.

If I write this:

class Program
{
    static void Main(string[] args)
    {
        Recurse4Evr();
    }

    static void Recurse4Evr()
    {
        Recurse4Evr();
    }
}

I get only one entry in the event log that says about the application error and that there is an exception. There is no second record with a stack trace, so it is almost useless.

? DebugDiag , , DebugDiag . , - . , , , .

, , , . - , . microsoft , ? ?

+5
2

, -, . , , , , DebugDiag AdsPlus. , .

0

, .

:

Damien_The_Unbeliever

MSDN StackOverflowException s:

.NET Framework StackOverflowException (, ). , .

.NET Framework 2.0 StackOverflowException try-catch, . , . , , . , , CLR, , CLR , , . . ICLRPolicyManager Common Language Runtime.


JaredPar

2.0, StackOverflow .

  • CLR , StackOverflow
  • stackoverflow , - ()
+1

All Articles