Non-freeing GC memory management
tcak via Digitalmars-d
digitalmars-d at puremagic.com
Tue Nov 17 11:27:14 PST 2015
As far as I know, GC has a separate thread that stops all other
threads periodically to clear the unused memory fields.
Windows Vista was (Linux does as well as far as I know) making
use of whole memory and not freeing the memory until more space
is needed.
What disadvantages would we have if GC was to be freeing memory
only when allocation is requested, and not checking periodically?
If there is space (free space in heap can be tracked I guess) in
heap still, there is no need to free anything. If there is no
space, and there is unused memory, they can be freed first. If
there is still not enough memory, finally the size of heap can be
increased.
More information about the Digitalmars-d
mailing list