Am 05.07.2014 23:31, schrieb Felix Winkelmann:
Finalizers have an impact on every GC, as every GC may free memory at any time. What may be possible is to register finalizers only when it is known that the associated data is not held in global variables. But I'm not sure if it isn't in the end easier to manage the resources by hand. On could do something like registerering and de-registering finalizers temporarily (the former is O(1), the latter O(N), though). Whether this buys anything, is another question, though. felix _______________________________________________ Chicken-hackers mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/chicken-hackers

I'm becoming ever more guilty here for failing to provide a single feature patch to runtime.c for just changing this.

If anyone had the patience to cherry-pick from a diff… here is code where doing de-registration in O(1) for finalizers and gc roots.


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

Reply via email to