x.php:
<?php
sleep(15);
?>
konsola:
$ php x.php &
[1] 5742
[1]+ Stopped x.php
Wynik: proces „ZATRZYMANY” - trwa wiecznie, dopóki nie wyślę a, TERM
a następnie CONT
zasygnalizuję.
Czego potrzebuję zamiast tego: proces kończący się i kończący po 15 sekundach, więc nie widzę go w top
lub htop
.
System: Ubuntu 12.04 LTS w VirtualBox; php-fpm
linux
php
ubuntu-12.04
Meglio
źródło
źródło
X.php
, czy zapomniałeś zamknąć tag PHP w przykładzie?sleep 15
zamiastphp
.Odpowiedzi:
Za pomocą
strace
Widzę, że program otrzymuje sygnał,SIGTTOU
co oznacza, że proces był w tle i próbował zapisać w terminalu, lub w tym przypadku zmienić jeden z jego trybów.Aby obejść ten problem, ustaw wartość wejściową na null:
Pytanie jest takie samo jak to: skrypt PHP nie będzie działał w tle
źródło