PHP Conference Nagoya 2025

LuaSandbox::getProfilerFunctionReport

(PECL luasandbox >= 1.1.0)

LuaSandbox::getProfilerFunctionReportПолучает данные профилировщика

Описание

public LuaSandbox::getProfilerFunctionReport(int $units = LuaSandbox::SECONDS): array

Для экземпляра профилирования, ранее запущенного с помощью LuaSandbox::enableProfiler(), получите отчёт о стоимости каждой функции.

The measurement unit used for the cost is determined by the $units parameter:

LuaSandbox::SAMPLES

Измерение количества образцов.

LuaSandbox::SECONDS

Измерение процессорного времени в секундах.

LuaSandbox::PERCENT

Измерение процента процессорного времени.

Список параметров

units

Константа единицы измерения.

Возвращаемые значения

Возвращает измерения профилировщика, отсортированные в порядке убывания, в виде ассоциативного массива (array). Ключи - это имена функций Lua (с исходным файлом и строкой, определёнными в угловых скобках), значения - это измерения как целое число (int) или число с плавающей запятой (float).

Замечание:

В Windows функция всегда возвращает пустой массив. В операционных системах, которые не поддерживают CLOCK_THREAD_CPUTIME_ID, таких как FreeBSD и Mac OS X, функция будет сообщать фактическое прошедшее время, а не время процессора.

Примеры

Пример #1 Профилирование кода Lua

<?php

// создание нового LuaSandbox
$sandbox = new LuaSandbox();

// начало профилирования
$sandbox->enableProfiler( 0.01 );

// ... Выполнение какого-то кода Lua ...

// получение данных профилирования
$data = $sandbox->getProfilerFunctionReport();

?>

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top