Я отлаживаю сбой, при котором длительный метод часто вызывается перед смертью.Моя главная проблема заключается в том, чтобы определить, где находятся вложенные и / или рекурсивные вызовы.
Окно Trace-> Chart-> Symbols показывает график работы функции в данный момент времени, который выглядит следующим образом:следующие вызовы:
display
|
drawChildren
/ \
drawTitle drawImage
| |
display display
| |
drawChildren drawChildren
display | _ _ _ _ _ _
drawChildren | |_ | |_| | _ | |_| | _|
drawTitle | |_| |_| | | | |
drawImage | |_| |_|
Что мне нужно, так это что-то более похожее на график пламени, где продолжительность каждого вызова видна сразу, а вложенные вызовы легче обнаружить:
display______________________________
drawChildren_______________________
drawTitle_______ drawImage_______
display_______ display_______
drawChildren drawChildren
Я пытался просмотреть представление списка, но мне было неудобно ориентироваться в количестве вызовов и итераций в нашем проблемном коде.Я знаю, что представление диаграммы можно отсортировать, но есть ли способ получить другое представление данных?