ошибка сегментации php при использовании pcntl

Я выполняю из командной строки на OSX El Capitan 10.11.3, PHP 5.5.32 с модулем pcntl включил следующий скрипт PHP.

<?php
declare(ticks = 1);

function mySigHandler() {
switch ($signo) {
case SIGTERM:
// handle shutdown tasks
exit;
break;
case SIGHUP:
// handle restart tasks
break;
case SIGUSR1:
echo "Caught SIGUSR1...\n";
break;
default:
// handle all other signals
}
}

pcntl_signal(SIGINT, "mySigHandler");
pcntl_signal(SIGTERM, "mySigHandler");
pcntl_signal(SIGHUP, "mySigHandler");
for ($n = 0; ; usleep(500000)) // 0.5 seconds
echo ++$n, "\n";
?>

Здесь я пытаюсь достичь типичного сценария обработки сигналов, который будет соответствующим образом реагировать на различные сигналы. Однако, когда я пытаюсь уничтожить скрипт, используя CTRL-C, kill -1, kill -2 или kill -15, я всегда получаю ошибку сегментации.
Что еще более расстраивает, так это тот факт, что я выполнил один и тот же сценарий на другой машине, и результаты были именно такими, на которые я надеялся в первую очередь. Любые идеи, почему эта ошибка сегментации продолжает происходить и как я мог ее решить?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]