Как генерируются трассировки стека?
Нет одного метода в программе "знает» где это находится в стеке. Все, что он знает, это его собственная маленькая работа, и он делает это и возвращается. Итак, когда возникает исключение и выводится трассировка стека, откуда это берется?
Существует ли неявно отдельный поток, работающий рядом с каждым приложением в JVM, которое 's мониторинг состояния программы? Или сама JVM хранит эту информацию, и исключения как-то извлекают эти данные из нее, когда они выбрасываются?
Если это так, то можно ли использовать какой-либо вызов для извлечения трассировки стека (либо из потока монитора, либо из JVM)?без исключение?