Skip Menu | will be shut down on March 1st, 2021.

This queue is for tickets about the IO CPAN distribution.

Report information
The Basics
Id: 28281
Status: rejected
Priority: 0/
Queue: IO

Owner: Nobody in particular
Requestors: JEDAI [...]

Bug Information
Severity: Important
Broken in:
  • 1.20
  • 1.22
  • 1.23
  • 1.2301
Fixed in: (no value)

Subject: IO::Pipe::End object become zombies without close()
Download (untitled) / with headers
text/plain 713b
The IO::Pipe::End close() contains a waitpid() that collect zombies, so the fact that Perl close() the filehandle that get out of scope isn't sufficient to get the same behavior in the case of an IO::Pipe object getting silently destroyed. IO::Handle has a void DESTROY but IO::Pipe::End should have its own DESTROY to avoid creating zombies (one of the object interface to system resources advantage over low-level functions is that the cleaning is automatic after all). Just adding : ##### # avoid zombification sub DESTROY { my $fh = shift; $fh->close() if $fh->opened(); } ##### in the IO::Pipe::End package should avoid this problem. Is there any reason not to do that ? (performance ?) -- Jedaï

This service is sponsored and maintained by Best Practical Solutions and runs on infrastructure.

Please report any issues with to