[Haskell-cafe] Preventing leaked open file descriptors whencatching exceptions
rrnewton at gmail.com
Tue Feb 21 19:29:03 CET 2012
Ah, thanks Bryan. I hadn't looked into it enough to realize that FDs are
just ints and not ForeignPtrs w/ finalizers.
Re: Donn's point. Well, yes, that would seem to be the case! But since I
think a linux bug is unlikely, I'm afraid that there's something else going
on here which I am not thinking of.
I'll make a self contained test of this and send it out.
On Tue, Feb 21, 2012 at 12:53 PM, Donn Cave <donn at avvanta.com> wrote:
> Quoth "Bryan O'Sullivan" <bos at serpentine.com>,
> > On Tue, Feb 21, 2012 at 8:16 AM, Ryan Newton <rrnewton at gmail.com> wrote:
> >> FYI, lsof confirms that there are indeed many many open connections to
> >> same FIFO:
> > Like all of the lowest-level I/O functions, openFD just gives you back an
> > integer, and the Fd type has no notion that there's an underlying system
> > resource associated with it. It's your responsibility to manage it (i.e.
> > clean up manually when catching an exception).
> What's more - if I understood the hypothesis correctly, that the
> exception occurs during openFd - that fails to return an Fd because
> the open(2) system call fails to return one, so it would presumably
> be an OS level bug if there's really an open file descriptor left
> from this.
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe