in reply to FileHandle->close() is not closing everything
However, I expect your real code does a pipe-open, and reads from it (or writes to it). A pipe-open is a complex process. A pipe is opened, the process forks, parent and child each close one end of the pipe (leaving a uni-directional pipe), and then the child does an exec. If you call close, Perl closes the pipe. It doesn't send a TERM signal, or something else to the child process. It's up to the child process how to deal with a closed pipe (most programs will exit, but some won't).
So you'll have to fix the OGG123 program, or do the termination from your program after the close yourself.
Abigail
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: FileHandle->close() is not closing everything
by Anonymous Monk on Mar 28, 2003 at 14:38 UTC | |
by Abigail-II (Bishop) on Mar 28, 2003 at 15:37 UTC |