#17558 [Com]: pcntl_signal() does not call user-defined function handler
| From: | vlcc69jfbo001 at sneakemail dot com | Date: | Fri, 25 Oct 2002 12:45:31 +0000 |
| Subject: | #17558 [Com]: pcntl_signal() does not call user-defined function handler | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-23303@lists.php.net to get a copy of this message | ||
ID: 17558
Comment by: vlcc69jfbo001@sneakemail.com
Reported By: clay@killersoft.com
Status: No Feedback
Bug Type: *Extensibility Functions
Operating System: Mac OS X
PHP Version: 4.2.1
New Comment:
I've been seeing the same thing, but on OpenBSD 3.1-stable.
I can't test with 4.3.0-cvs as it's currently broken for me
(bug 20063), but my last build that worked (from about 5
days ago) has this same problem - I set up signal handlers,
send it signals and nothing happens.
Previous Comments:
------------------------------------------------------------------------
[2002-09-09 01:00:04] php-bugs@lists.php.net
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
------------------------------------------------------------------------
[2002-08-08 00:51:03] alan_k@php.net
is pnctl built into php, or as a module - pcntl.so ?
------------------------------------------------------------------------
[2002-08-07 02:22:32] jeff@tmtrading.com
See bug id 15125. Looks like a similar problem.
------------------------------------------------------------------------
[2002-07-07 21:00:30] sniper@php.net
Does this happen with the latest snapshot:
http://snaps.php.net/php4-latest.tar.gz
------------------------------------------------------------------------
[2002-06-01 23:27:52] clay@killersoft.com
function: pcntl_signal()
problem: If "handler" argument is set to a user-defined
function, that function is never called.
script: (taken from www.php.net/pcntl_signal)
<?php
// signal handler function
function sig_handler($signo) {
echo "We hit the sig_handler!\n";
switch($signo) {
case SIGTERM:
// handle shutdown tasks
exit;
break;
case SIGHUP:
// handle restart tasks
break;
case 1:
print "Caught sig 1 ...\n";
break;
case SIGUSR1:
print "Caught SIGUSR1...\n";
break;
default:
// handle all other signals
}
}
print "Installing signal handler...\n";
// setup signal handlers
pcntl_signal(SIGTERM, "sig_handler");
pcntl_signal(SIGHUP, "sig_handler");
pcntl_signal(SIGUSR1, "sig_handler");
print "Generating signal SIGTERM to self...\n";
// send SIGUSR1 to current process id
posix_kill(posix_getpid(), SIGUSR1);
print "Done\n"
?>
The "we hit the sig handler!" echo never appears ... thus I
suspect it's never being called.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=17558&edit=1