registerFinalizer -- register a string that will be displayed when an object is garbage collected
Synopsis
-
- Usage:
- registerFinalizer(x,str)
-
Inputs:
-
Consequences:
-
A finalizer is registered with the garbage collector to print a string when that object is collected as garbage
Description
i1 : R = QQ[a..d];
|
i2 : makeGB = (n) -> (g := gb((ideal vars R)^4); registerFinalizer(g, "gb("|n|")"););
|
i3 : for i from 1 to 10 do (makeGB i);
|
i4 : collectGarbage()
|
Caveat
This function should mainly be used for debugging. Having a large number of finalizers might degrade the performance of the program. Moreover, registering two or more objects that are members of a circular chain of pointers for finalization will result in a memory leak, with none of the objects in the chain being freed, even if nothing else points to any of them.