Во-первых, важно отметить, что эти два значения очень разные: gc
не удаляет любые переменные, которые вы все еще используете - это только освобождает память для тех, которые вы больше не используете иметь доступ к (удален ли с помощью rm()
или, скажем, создан в функции, которая с тех пор вернулась). Запуск gc()
никогда не заставит вас потерять переменные.
Вопрос о том, следует ли вам звонить gc()
после вызова rm()
, является хорошим. документация для gc: примечания:
Вызов gc вызывает сборку мусора. Это также будет происходить автоматически без вмешательства пользователя, и основной целью вызова gc является отчет об использовании памяти.
Однако может быть полезно вызвать gc после удаления большого объекта, так как это может побудить R вернуть память операционной системе.
Таким образом, ответ заключается в том, что было бы хорошо позвонить по номеру gc()
(и, по крайней мере, не причинить вреда), даже если это, скорее всего, сработает (если не сразу, то вскоре).