Ограничение по времени выполнения отдельных участков кода
Допустим имеется:
for($i=1;$i<=10;$i++) { // тут мы выполняем некие действия которые теоретически могут // затянуться по времени, а нам это не нужно, и мы хотим в этом // случае оборвать скрипт } Допустим я хочу на каждую итерацию цикла установить 30 секунд, то как мне это сделать? Нужно что-то типа: $limit=30; for($i=1;$i<=10;$i++) { set_time_limit($limit); $limit+=30; // тут мы выполняем некие действия которые теоретически могут // затянуться по времени, а нам это не нужно, и мы хотим в этом // случае оборвать скрипт } Подскажите так можно написать? (я не знаю как это проверить). Может подскажете более правильный вариант. |
запускать по cron'у каждый 30 секунд, а в скрипте учесть, что он может не успеть что-то сделать. А вообще сложно отвечать на такой абстрактный вопрос
|
Считай (пример 1) длительность и анализируй если надо соскочить с некой итерации цикла
|
Цитата:
Цитата:
А вот такая конструкция разве не поможет? set_time_limit($limit); $limit+=30; Допускается ли использование set_time_limit несколько раз? будет ли она при этом работать? ПС: проблема еще в том, что я не могу придумать способа это проверить... |
Цитата:
Цитата:
$limit=2; for ($i=0; $i<10; $i++) { echo '.'; if ($i == 1) echo "\nyou ain't gonna see this\n"; set_time_limit($limit); $limit += 2; sleep( 3 ); } |
Цитата:
|
Часовой пояс GMT +3, время: 16:01. |