У меня есть пять функций exec() в моем скрипте. Я хочу настроить его так, чтобы, если функция не отвечает в течение определенного времени, функция будет уничтожена, и следующая функция начнет выполнение.

<?php
    exec("timeout 5 /usr/local/bin/wrun 'uptime;ps -elf|grep httpd|wc -l;free -m;mpstat'",$uptime);  
    exec("timeout 5 /usr/local/bin/trun 'uptime;ps -elf|grep httpd|wc -l;free -m;mpstat'",$uptime);  
    exec("timeout 5 /usr/local/bin/drun 'uptime;ps -elf|grep httpd|wc -l;free -m;mpstat'",$uptime);
 ?> 

В этом случае аргумент timeout не работает. Пожалуйста, исправьте это или дайте мне альтернативный метод.

1 ответ1

1

ваш exec sysntax неправильный

string exec ( string $command [, array &$output [, int &$return_var ]] )

Вы должны установить ограничение по времени, прежде чем начать свой код, что-то вроде этого

<?php

set_time_limit(5);

exec(" /usr/local/bin/wrun 'uptime;ps -elf|grep httpd|wc -l;free -m;mpstat'",$uptime);
?>

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .