Недавно обнаружил, что stacktrace, вызываемый у Exception на один метод короче, чем stacktrace вызываемый у Thread. Почему то Exception не добавляет в конец stacktrace сам метод getStackTrace(). Кто-нибудь может объяснить почему так происходит?
StackTraceElement[] stackTraceElements = new Exception().getStackTrace();
StackTraceElement [] elements = Thread.currentThread().getStackTrace();
StackTraceElement[] stackTraceElements = new Exception().getStackTrace();
Это в мейн треде вызывается
StackTraceElement [] elements = Thread.currentThread().getStackTrace();
Это в другом треде. В стектрейсе дополнительно указывает информацию, что это за тред. Отсюда и дополнительный элемент в массиве
Продвижение своими сайтами как стратегия роста и независимости