signature MLTON_GC =
sig
val collect: unit -> unit
val pack: unit -> unit
val setMessages: bool -> unit
val setSummary: bool -> unit
val unpack: unit -> unit
structure Statistics :
sig
val bytesAllocated: unit -> IntInf.int
val lastBytesLive: unit -> IntInf.int
val numCopyingGCs: unit -> IntInf.int
val numMarkCompactGCs: unit -> IntInf.int
val numMinorGCs: unit -> IntInf.int
val maxBytesLive: unit -> IntInf.int
end
end
-
collect ()causes a garbage collection to occur.
-
pack ()shrinks the heap as much as possible so that other processes can use available RAM.
-
setMessages bcontrols whether diagnostic messages are printed at the beginning and end of each garbage collection. It is the same as the
gc-messagesruntime system option. -
setSummary bcontrols whether a summary of garbage collection statistics is printed upon termination of the program. It is the same as the
gc-summaryruntime system option. -
unpack ()resizes a packed heap to the size desired by the runtime.
-
Statistics.bytesAllocated ()returns bytes allocated (as of the most recent garbage collection).
-
Statistics.lastBytesLive ()returns bytes live (as of the most recent garbage collection).
-
Statistics.numCopyingGCs ()returns number of (major) copying garbage collections performed (as of the most recent garbage collection).
-
Statistics.numMarkCompactGCs ()returns number of (major) mark-compact garbage collections performed (as of the most recent garbage collection).
-
Statistics.numMinorGCs ()returns number of minor garbage collections performed (as of the most recent garbage collection).
-
Statistics.maxBytesLive ()returns maximum bytes live (as of the most recent garbage collection).