Я установил hhvm 3.5 в CentOs 6.5, и он мог работать правильно. Но я обнаружил, когда я использую функцию pcntl_fork (), чтобы что-то сделать.
Hhvm выдаст ошибку как
Неустранимая ошибка: разветвление запрещено в режиме сервера.
Это произошло просто в nginx + hhvm, в режиме cli все в порядке. Ли pcntl_fork()
может работать только в режиме cli? Если нет, как сделать это хорошо?
Сообщение об ошибке выглядит довольно ясно для меня: вы не можете разветвляться в режиме сервера (то есть, FastCGI).
Что касается того, почему, я могу только догадываться: php-fpm выполняет один запрос в одном процессе. HHVM выполняет намного более сложную многопотоковую обработку запросов, что может легко заставить fork не совсем делать то, что вы ожидаете (и вообще оставить вещи в странном или противоречивом состоянии, если вы не уделяете должного внимания).
Других решений пока нет …