in reply to trouble with custom signal handlers
Hi casaschi,
I couldn't reproduce the error you showed with your example code. I tried:
use warnings; use strict; sub handleSigs { my ($signalReceived) = @_; my $exitVal = 0; warn("warning: received $signalReceived signal"); if ($signalReceived eq "INT") { $exitVal = 1; } elsif ($signalReceived eq "USR1") { $exitVal = 2; } elsif ($signalReceived eq "USR2") { $exitVal = 3; } exit($exitVal); } $SIG{USR1}=\&handleSigs; $SIG{USR2}=\&handleSigs; print "My PID is $$\n"; sleep(10); print "Exiting\n";
And when I send a SIGUSR1 or SIGUSR2, I got the expected message warning: received USR1 signal at ....
I'm guessing there's some part of your code that is relevant to the problem that you haven't shown. If you could try to boil down your code to something that reproduces the problem, that would be very helpful. See also Short, Self Contained, Correct Example
Regards,
-- Hauke D
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: trouble with custom signal handlers
by casaschi (Novice) on Apr 17, 2016 at 11:22 UTC | |
by afoken (Chancellor) on Apr 17, 2016 at 12:01 UTC | |
by BrowserUk (Patriarch) on Apr 17, 2016 at 12:08 UTC |