Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Re: fork(): when parent exits, what happens to child?

by rubasov (Friar)
on Mar 26, 2010 at 15:44 UTC ( #831183=note: print w/ replies, xml ) Need Help??

in reply to fork(): when parent exits, what happens to child?

You tried to avoid buffered output, but setting of $| affects the currently selected filehandle only (STDOUT by default). Try this after you opened data1.txt:

my $saved_fh = select; select $OUTFILE; $| = 1; select $saved_fh;
Hope that helps.

update: to answer your original question: If the child separated itself from the parent (daemonized itself) then generally nothing happens (from the viewpoint of the child) when the parent dies. The orphaned child will get a new foster parent, this is called init in the Unix world. But for example if the child still shared its filehandles with the parent, and these filehandles are attached to a terminal and you close this terminal so these will get closed then the child will get a SIGPIPE. If the signal is not explicitly handled then the child will die. (But see "Complete Dissociation of Child from Parent" in perlipc for a more complete example.)

Comment on Re: fork(): when parent exits, what happens to child?
Download Code
Re^2: fork(): when parent exits, what happens to child?
by Anonymous Monk on Mar 13, 2013 at 10:17 UTC
    init becomes a parent process

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (6)
As of 2015-07-04 04:45 GMT
Find Nodes?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...

    Results (57 votes), past polls