LuaSandbox::setCPULimit

(PECL luasandbox >= 1.0.0)

LuaSandbox::setCPULimit — Встановлює обмеження часу процесора для середовища Lua

Опис

public LuaSandbox::setCPULimit(float|bool $limit): void

Встановлює обмеження часу процесора для середовища Lua.

Якщо загальний користувальницький та системний час, що використовується середовищем після виклику методу, перевищує це обмеження, викидається виняток LuaSandboxTimeoutError

Час, що використовується в callback-функціях PHP, включено до ліміту.

Встановлення обмеження часу для callback-функції під час роботи Lua призводить до скидання таймера або його запуску, якщо він ще не був запущений.

Зауваження :

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

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

limit

Обмеження як число з плаваючою точкою (float) у секундах або **false**щоб не обмежувати.

Значення, що повертаються

Функція не повертає значення після виконання.

Приклади

Приклад #1 Виклик функції Lua

Loading...

Висновок наведеного прикладу буде схожим на:

PHP Fatal error:  Uncaught LuaSandboxTimeoutError: The maximum execution time for this script was exceeded

Дивіться також