summaryrefslogtreecommitdiff
path: root/ext/pcntl/tests/pcntl_wait.phpt
blob: 5616d5b9c028dde63b21146682fdcdc393498dfa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
--TEST--
pcntl_wait()
--SKIPIF--
<?php if (!extension_loaded("pcntl")) print "skip"; ?>
<?php if (!extension_loaded("posix")) die("skip posix extension not available"); ?>
--FILE--
<?php
$pid = pcntl_fork();
if ($pid == -1) {
    die("failed");
} else if ($pid) {
    $status = 0;
    pcntl_wait($status, WUNTRACED);
    var_dump(pcntl_wifexited($status));
    posix_kill($pid, SIGCONT);

    pcntl_wait($status);
    var_dump(pcntl_wifsignaled($status));
    var_dump(pcntl_wifstopped($status));
    var_dump(pcntl_wexitstatus($status));

    var_dump(pcntl_wait($status, WNOHANG | WUNTRACED));
} else {
    posix_kill(posix_getpid(), SIGSTOP);
    exit(42);
}
?>
--EXPECT--
bool(false)
bool(false)
bool(false)
int(42)
int(-1)