> "Simon Marlow" <[EMAIL PROTECTED]> writes:
> >                                                       To fix these
> > problems you have to think carefully about strictness and 
> demand in your
> > program.  For memory we have heap profilers to help out, 
> but we don't
> > have I/O descriptor profilers for lazy I/O!
> 
> Surely I/O descriptors are just a type of heap-value, and as such
> can be profiled in the normal way (producer, retainer, etc), just
> like any other heap construction?

File descriptors are held in the kernel, not the heap.  Hmmm, I suppose
you could track Handles, which notionally "hold on to" a file
descriptor, but it's not completely reliable because a Handle will be
held by a finalizer for an unspecified period of time before the
descriptor is released.  In practice it might not be a serious problem
unless there are lots of other threads. 

Cheers,
        Simon
_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to