Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[Caml-list] Modifying heap from custom finalizers?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2003-12-29 (08:26)
From: Nuutti Kotivuori <naked+caml@n...>
Subject: [Caml-list] Modifying heap from custom finalizers?
I am wonder how evil of a deed would I be doing to the garbage
collector by modifying the heap in the finalizer of a custom block.

Apparently the finalizers are run during the sweep phase of the major
garbage collector. If I there change a value from the global table to
the unit value - I think the worst I can make happen is that the value
pointed by it does not get reclaimed in the same garbage collection
cycle. But, what about anything more? Assigning values? Creating new
values? Do I have to make sure the small heap stays empty? And if
zeroing the value at sweep phase makes the values pointed by it
garbage collected only at the next collection, is there any I can
speed up the process?

I could find no documentation what you can and what you can't do in
the finalizers for custom blocks.

-- Naked

To unsubscribe, mail Archives:
Bug reports: FAQ:
Beginner's list: