PHP-интерпретация графиков xDebug

Я профилирую PHP-приложение (основанное на структуре Zend). В приложении вы найдете скриншот главного графика вызовов, который KCacheGrind производит из вывода xDebug.

Есть две вещи, которые я не понимаю:

1) Почему {main} "fork" в 2 вызова? Предполагается ли они, что они как-то параллельны или случаются после другого?

2) Стрелка слева от {main} имеет небольшую синюю полосу с текстом 2x; означает ли это, что вызов Zend_Application->bootstrap произошло дважды?

 

PHP xDebug graph

Ответ 1

  • Звонки (конечно) происходят друг за другом. График разбивается, потому что каждая из двух верхних функций вызывается main(). На графике показаны вызовы, а не порядок выполнения.

  • Да, это именно то, что это значит. main(), называемый Zend_Application- > bootstrap дважды, и → запустить один раз.