我希望能够预测在发生StackOverflow
异常之前适合堆栈的递归调用的数量。为此,我需要找出堆栈上给定方法调用的“覆盖区”。
有没有办法以编程方式执行此操作?我调查了System.Diagnostics.StackFrame
和System.Diagnostics.StackTrace
,但找不到任何相关内容。
根据经验,使用this simple example,我发现足迹与:
完全不同很可能不同版本的.NET也会产生不同的结果。
总结一下:
看到堆栈帧大小与这些参数的差异如此之大,是否有一种编程方法可以确定给定方法在运行时的堆栈帧大小?
'离线'(手动)怎么样?也许至少对于直接的,发布的,非优化的构建?