diff options
author | oni-link <knil.ino@gmail.com> | 2014-12-30 15:55:34 +0100 |
---|---|---|
committer | oni-link <knil.ino@gmail.com> | 2014-12-31 17:08:26 +0100 |
commit | 36ba1d9fba1c5ad07f3c8464514219ecb4d9dd17 (patch) | |
tree | 5d6e410583637f478e900ca50992be27c45d2e5e /runtime/doc/manpages/vim.1 | |
parent | 91b378d349425d0ad435c06fc341de5aa2f7b5c9 (diff) | |
download | rneovim-36ba1d9fba1c5ad07f3c8464514219ecb4d9dd17.tar.gz rneovim-36ba1d9fba1c5ad07f3c8464514219ecb4d9dd17.tar.bz2 rneovim-36ba1d9fba1c5ad07f3c8464514219ecb4d9dd17.zip |
Speed up garbage collection.
For garbage collection all lists are kept in first_list, a list of all
lists.
free_unref_items() searches through first_list and removes unreferenced
lists from it (by calling list_free(..., FALSE)). But after a list was
removed, the search continues from the beginning of first_list (not sure
how many lists were really removed and where to continue in first_list).
This is not necessary anymore since vim-patch 7.0.135, because a call to
list_free(...,FALSE) makes sure, that no other lists (and dictionaries)
are freed. So we always know, that the next list in first_list is
still valid (allocated or NULL) and can be used to continue the search.
Likewise for dictionaries.
Original patch by Ariya Mizutani
https://groups.google.com/forum/#!searchin/vim_dev/GC/vim_dev/DBYOdHQWvqY/1WH04_dwETIJ
Diffstat (limited to 'runtime/doc/manpages/vim.1')
0 files changed, 0 insertions, 0 deletions