mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-12 06:41:13 +02:00
(gc_sweep_freelist_finish): Inserted explanation of use of
gc_trigger.
This commit is contained in:
parent
80770ddc5f
commit
7dbff8b15d
1 changed files with 7 additions and 0 deletions
|
@ -1562,6 +1562,13 @@ gc_sweep_freelist_finish (scm_freelist_t *freelist)
|
||||||
}
|
}
|
||||||
scm_gc_cells_collected += freelist->collected;
|
scm_gc_cells_collected += freelist->collected;
|
||||||
|
|
||||||
|
/* Although freelist->gc_trigger is used to test freelist->collected
|
||||||
|
* (which is the local GC yield for freelist), it is adjusted so
|
||||||
|
* that *total* yield is freelist->gc_trigger_fraction of total heap
|
||||||
|
* size. This means that a too low yield is compensated by more
|
||||||
|
* heap on the list which is currently doing most work, which is
|
||||||
|
* just what we want.
|
||||||
|
*/
|
||||||
freelist->grow_heap_p = (freelist->collected < freelist->gc_trigger);
|
freelist->grow_heap_p = (freelist->collected < freelist->gc_trigger);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue