• Exception.StackTrace


    Exception中的StackTrace属性

    执行堆栈跟踪在给定时刻正在执行的所有方法。 对方法调用的跟踪称为堆栈跟踪。 堆栈跟踪列表提供了一种循着调用堆叠跟踪到方法中异常发生处行号的手段。
    StackTrace 属性返回源于异常引发位置的调用堆栈的框架。 您可以通过创建 System.Diagnostics.StackTrace 类的新实例并使用它的 StackTrace.ToString 方法获得有关调用堆栈中的其他帧的信息。

    当应用程序代码中抛出异常时,公共语言运行时 (CLR) 将更新堆栈跟踪(通过使用 throw 关键字)。

    如果已使用不同于最初引发异常的方法重新引发该异常,则堆栈跟踪将包含最初引发该异常的方法的位置,重新引发改异常的方法位置。

    如果引发该异常,且稍后以相同的方法重新引发,则堆栈跟踪将只包含再次引发异常的位置,而不包括最初引发异常的位置。
    因为优化过程中的代码转换(如内联),StackTrace 属性可能无法按预期报告许多方法调用。

    需要注意的是,只能throw一次,如果throw两次的话,那么最上层捕获的异常,则不包含原始的引发异常的位置

  • 相关阅读:
    java作业利用递归解决问题
    java课堂测试2(两种方式)
    java模拟验证码生成
    java选做猜数字
    java课堂动手测试
    java课堂作业,求多参数的和
    《大道至简》第一章伪代码形式读后感
    《大道至简》读后感
    关于《大道至简》第八章的收获
    [JLOI2012]树 倍增优化
  • 原文地址:https://www.cnblogs.com/chucklu/p/4060187.html
Copyright © 2020-2023  润新知