(PECL luasandbox >= 1.1.0)
LuaSandbox::getProfilerFunctionReport — Recupera los datos del perfilador
Para una instancia de perfilado previamente iniciada por LuaSandbox::enableProfiler(), recupera un informe del costo de cada función.
La medición del costo se determina por el argumento $units:
LuaSandbox::SAMPLES
Medición en número de muestras.
LuaSandbox::SECONDS
Medición en segundos de tiempo CPU.
LuaSandbox::PERCENT
Medición en porcentaje de tiempo CPU.
units
La unidad de medida constante.
Devuelve las mediciones del perfilador, ordenadas en orden descendente, en forma de un array asociativo. Las claves son los nombres de las funciones Lua (con el fichero fuente y la línea definidos entre corchetes angulares), los valores son las mediciones en int o float.
Nota:
En Windows, esta función siempre devuelve cero. En los sistemas operativos que no soportan
CLOCK_THREAD_CPUTIME_ID
, como FreeBSD y Mac OS X, esta función devolverá el tiempo transcurrido en el reloj, no el tiempo CPU.
Ejemplo #1 Perfilado de código Lua
<?php
// crear un nuevo LuaSandbox
$sandbox = new LuaSandbox();
// Inicia el perfilador
$sandbox->enableProfiler( 0.01 );
// ... Ejecute código Lua aquí ...
// Recupera los datos del perfilador
$data = $sandbox->getProfilerFunctionReport();
?>