大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说Stack Trace简介[通俗易懂],希望能够帮助大家进步!!!
1.中文翻译叫做堆栈跟踪,一个调试工具,或者叫做调试方法。
它的展示方式就是线程和JVM监测的snapshot,根据程序的复杂程度,它可能有几十行到几千行不等。
在try-catch语句中,每当catch到了Exception,通常默认的做法就是printStackTrace。其实一共有3个方法生成stack trace,这个貌似是最普遍的方法。
2.打印出来了以后该怎么看呢?
首先,找到当前的线程。理论上来说,current thread应该是当获取snapshot的时候最后运行的thread。通常来说,都被标上了"current thread"。但是,这个不能保证说一定就是当前线程,只能说是系统的一个猜测,但是大部分时间是准确的。
接着,找Runnable的相关的,意思是它们之前正在运行,或者说已经准备好,只要时间片一到,马上就开始运行。这些线程可能会到引导出问题的所在。