Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: Signal handling problem

by sandfly (Beadle)
on Oct 02, 2003 at 20:57 UTC ( [id://296083]=note: print w/replies, xml ) Need Help??


in reply to Signal handling problem

I can't see exactly what the problem is. Is it possible the SIGCHLD is not breaking you out of the sleep?
It must boil down to one of three things:
1. Your child process isn't dying
2. The child process dies, but the parent isn't reaping it.
3. The child process dies, the parent reaps it, but %child_pids is not clear

I suggest you find out which, using ps, or similar. Most likely it's 2 or 3. Put print statements into the reaping sub; also, change the parent's sleep to sleep 1, and print the %child_pids hash every time round the while loop.

Replies are listed 'Best First'.
Re: Re: Signal handling problem
by gnu@perl (Pilgrim) on Oct 02, 2003 at 21:23 UTC
    Been there, but thanks for your help. I think I found out what it was. For some reason, even though I had blocked them, some of the signals were getting through to the child processes and it was acting on them as well.

    What I did was to assign all the $SIG{XXX} = 'DEFAULT' then reassign what I wanted in the child and it seems to work now. This isn't a permanent fix, but it will do until I have more time to track it down.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://296083]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (5)
As of 2024-04-23 06:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found