On Feb 24, 2007, at 4:40 PM, Peter Keller wrote:

On Sat, Feb 24, 2007 at 04:38:16PM -0500, Graham Fawcett wrote:
On 2/24/07, felix winkelmann <[EMAIL PROTECTED]> wrote:
On 2/23/07, john <[EMAIL PROTECTED]> wrote:
Hi. Are ports automatically closed when out of scope?

No. You could set a finalizer, though.

It seems to me that *all* ports should be closed upon finalization,
unless explicitly told not to. That is, all ports should have
close-*-port as a default finalizer, and there should be a procedure
available to unregister the finalizer in the rare cases where it
matters to leave it open.

If you need to do this type of thing, unwind-protect is your friend. There
is no guarantee that the finalizer will be called when it *must*
be called in order not to run out of file descriptors when you need
something. Unwind-protect is the way to do this type of clean up.

Yes, or use the 'call-with-*-file' & 'with-*-file' procedures.

Automatic system resource release upon GC is nice but not R5RS behavior.


Later,
-pete


_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users



_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to