2012-06-11 1 views
0

Для выполнения программы Java или JavaScript после ее выполнения распечатайте последовательность вызовов. Вызовы в порядке обращения. Например.Как получить метод/функцию Трассировка вызова для определенного запуска?

main() 
{ A(); 
} 

A() 
{ B(); 
    C(); 
} 

Тогда след вызов должен быть:

main -> A() -> B() -> C() 

Есть ли какой-либо инструмент, который можно профилировать и выход такого рода информации? Похоже, что это обычная потребность в отладке или настройке производительности.

Я заметил, что некоторые профилографы могут это сделать, но я предпочитаю более простой/простой в использовании.

Спасибо!

+1

Java не JavaScript. –

+1

[В чем разница между JavaScript и Java?] (Http://stackoverflow.com/questions/245062/whats-the-difference-between-javascript-and-java) –

+1

Итак ... через 2 года я до сих пор не знаю, t знать, если это о Java или JavaScript ... –

ответ

2

IDE будет работать для вас. Например, eclipse - широко используемая среда разработки для Java-программирования, и если вы ее используете, вы можете узнать иерархию вызовов, которые приводят к вызову определенного метода.

Попробуйте выбрать метод, щелкните правой кнопкой мыши и выберите 'Open называют Hieracrhy' или Ctrl + Alt + H. Это не тот профилер, который вы, возможно, ищете, но поможет вам узнать иерархию вызовов.

0

Если вы хотите, чтобы проследить функцию в JavaScript, вы можете использовать Developer Tools в Webkit браузеров или Firebug.

Или вы можете сделать это:

function A(){ 
    debugger; 
    B(); 
    C(); 
} 

Примечание:Java is not JavaScript.

enter image description here

0

В Java сдачи:

new Throwable().printStackTrace(); 

Вы получите трассировку до звонка.

0

Посмотрите на вопрос this. Его схожая с тем, что вы ищете, «простой/простой в использовании»