mirror of
https://github.com/php/php-src.git
synced 2024-10-21 00:12:34 +00:00
d94e388d74
# Thanks Tony
73 lines
1.1 KiB
PHP
73 lines
1.1 KiB
PHP
--TEST--
|
|
proc_open
|
|
--SKIPIF--
|
|
<?php
|
|
if (!is_executable('/bin/sleep')) echo 'skip no sleep';
|
|
if (!is_executable('/usr/bin/nohup')) echo 'skip no nohup';
|
|
?>
|
|
--FILE--
|
|
<?php
|
|
$ds = array(array('pipe', 'r'));
|
|
|
|
$cat = proc_open(
|
|
'/usr/bin/nohup /bin/sleep 50',
|
|
$ds,
|
|
$pipes
|
|
);
|
|
|
|
sleep(1); // let the OS run the nohup process before sending the signal
|
|
|
|
var_dump(proc_terminate($cat, 1)); // send a SIGHUP
|
|
sleep(1);
|
|
var_dump(proc_get_status($cat));
|
|
|
|
var_dump(proc_terminate($cat)); // now really quit it
|
|
sleep(1);
|
|
var_dump(proc_get_status($cat));
|
|
|
|
proc_close($cat);
|
|
|
|
echo "Done!\n";
|
|
|
|
?>
|
|
--EXPECTF--
|
|
bool(true)
|
|
array(8) {
|
|
["command"]=>
|
|
string(28) "/usr/bin/nohup /bin/sleep 50"
|
|
["pid"]=>
|
|
int(%d)
|
|
["running"]=>
|
|
bool(true)
|
|
["signaled"]=>
|
|
bool(false)
|
|
["stopped"]=>
|
|
bool(false)
|
|
["exitcode"]=>
|
|
int(-1)
|
|
["termsig"]=>
|
|
int(0)
|
|
["stopsig"]=>
|
|
int(0)
|
|
}
|
|
bool(true)
|
|
array(8) {
|
|
["command"]=>
|
|
string(28) "/usr/bin/nohup /bin/sleep 50"
|
|
["pid"]=>
|
|
int(%d)
|
|
["running"]=>
|
|
bool(false)
|
|
["signaled"]=>
|
|
bool(true)
|
|
["stopped"]=>
|
|
bool(false)
|
|
["exitcode"]=>
|
|
int(-1)
|
|
["termsig"]=>
|
|
int(15)
|
|
["stopsig"]=>
|
|
int(0)
|
|
}
|
|
Done!
|