On Fri, Dec 26, 2008 at 03:39:06PM +0100, Goswin Brederlow wrote: > I wrote some bindings for libaio using custom blocks for the C > structures I need to allocate for the internal state and buffer. I > also wrote *_finalize(value) functions for them so they get properly > cleaned up when no longer in use. > > I assumed that when the program exits normaly that all memory will be > freed, specifically that *_finalize(value) is called for all custom > blocks in case they have to do some custom cleanup. Unfortunately that > is not the case.
I think I've seen this problem before and solved it using something along these lines: at_exit Gc.compact ;; Rich. -- Richard Jones Red Hat -- To UNSUBSCRIBE, email to debian-ocaml-maint-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org