PHP
处理控制 | Process Control

pcntl_sigwaitinfo

pcntl_sigwaitinfo

(PHP 5 >= 5.3.0, PHP 7)

pcntl_sigwaitinfo — Waits for signals

Description

int pcntl_sigwaitinfo ( array $set [, array &$siginfo ] )

The pcntl_sigwaitinfo() function suspends execution of the calling script until one of the signals given in set are delivered. If one of the signal is already pending (e.g. blocked by pcntl_sigprocmask()), pcntl_sigwaitinfo() will return immediately.

Parameters

set

Array of signals to wait for.

siginfo

The siginfo parameter is set to an array containing informations about the signal.

The following elements are set for all signals:

  • signo: Signal number

  • errno: An error number

  • code: Signal code

The following elements may be set for the SIGCHLD signal:

  • status: Exit value or signal

  • utime: User time consumed

  • stime: System time consumed

  • pid: Sending process ID

  • uid: Real user ID of sending process

The following elements may be set for the SIGILL, SIGFPE, SIGSEGV and SIGBUS signals:

  • addr: Memory location which caused fault The following element may be set for the SIGPOLL signal:

  • band: Band event

  • fd: File descriptor number

Return Values

On success, pcntl_sigwaitinfo() returns a signal number.

Examples

Example #1 pcntl_sigwaitinfo() example

<?php echo "Blocking SIGHUP signal\n"; pcntl_sigprocmask(SIG_BLOCK, array(SIGHUP) echo "Sending SIGHUP to self\n"; posix_kill(posix_getpid(), SIGHUP echo "Waiting for signals\n"; $info = array( pcntl_sigwaitinfo(array(SIGHUP), $info ?>

See Also

  • pcntl_sigprocmask() - Sets and retrieves blocked signals

  • pcntl_sigtimedwait() - Waits for signals, with a timeout

← pcntl_sigtimedwait

pcntl_strerror →

© 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

https://secure.php.net/manual/en/function.pcntl-sigwaitinfo.php