(PECL luasandbox >= 1.1.0)
LuaSandbox::getProfilerFunctionReport — Obtém dados do profiler
Para uma instância profiler iniciada anteriormente por LuaSandbox::enableProfiler(), obtém um relatório do custo de cada função.
A unidade de medida usada para o custo é determinada pelo parâmetro $units:
LuaSandbox::SAMPLESLuaSandbox::SECONDSLuaSandbox::PERCENTunitsRetorna medições do profiler, classificadas em ordem decrescente, como um array associativo. Chaves são os nomes das funções Lua (com arquivo de origem e linha definidos entre colchetes angulares), valores são as medições como int ou float.
Nota: No Windows, esta função sempre retorna um array vazio. Em sistemas operacionais que não suportam
CLOCK_THREAD_CPUTIME_ID, como FreeBSD e Mac OS X, esta função relatará o tempo decorrido do relógio de parede, não o tempo da CPU.
Exemplo #1 Profiling Lua code
<?php
// Cria um novo LuaSandbox
$sandbox = new LuaSandbox();
// Inicia o profiler
$sandbox->enableProfiler( 0.01 );
// Executa aqui algum código Lua
// Obtém os dados do profiler
$data = $sandbox->getProfilerFunctionReport();
?>