Bug#509803: Fails to properly free memory on exit
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
Reply to: