2012-04-16 27 views
11

Estoy perfilando una aplicación PHP (basada en el marco Zend). Adjunto puede encontrar una captura de pantalla del gráfico de llamadas principal que KCacheGrind produce a partir de la salida de xDebug.PHP Interpretación del gráfico xDebug

Hay dos cosas que no entiendo:

1) ¿Por qué {main}"tenedor" en 2 llamadas? ¿Se supone que son paralelos de alguna manera o sucede uno después del otro?

2) La flecha a la izquierda de {main} tiene una pequeña barra azul con el texto 2x; ¿Esto significa que la llamada al Zend_Application->bootstrap ocurrió dos veces?

 

PHP xDebug graph

Respuesta

16
  1. Las llamadas (por supuesto) a pasar después de unos a otros. El gráfico se divide porque cada una de las dos funciones superiores es llamada por main(). El gráfico muestra llamadas, no orden de ejecución.

  2. Sí, eso es exactamente lo que significa. main() llamado Zend_Application-> bootstrap dos veces y -> ejecutar una vez.

Cuestiones relacionadas