Someone gave name the answer over at:
In general you must detach the child process from its parent to allow the parent to exit cleanly -- otherwise the parent can't assume that it won't need to handle more input/output.
} elsif ($pid == 0) { close STDIN; close STDERR; close STDOUT; # or redirect do_long_running_task(); exit;
In your example, the child process is making print statements until it exits. Where do those prints go if the parent process has been killed and closed its I/O handles?
In reply to Re^2: Can I have a Perl script, initiated from a browser, fork itself, and not wait for the child to end?
by bartender1382
in thread Can I have a Perl script, initiated from a browser, fork itself, and not wait for the child to end?
by bartender1382
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |