【发布时间】:2015-12-21 13:14:42
【问题描述】:
运行一个长脚本后,我查看了 Windows 任务管理器(Windows 7 64 位),发现使用了超过 3 gig 的内存。我从内存中删除了所有变量。内存仍然被使用。所以我搜索了SO并找到了这个post。我尝试运行 gc()。我得到以下信息:
> gc()
used (Mb) gc trigger (Mb) max used (Mb)
Ncells 893182 47.8 1835812 98.1 1835812 98.1
Vcells 2061325 15.8 19962389 152.4 407302954 3107.5
这是在等待几分钟之后。我期待大部分内存被释放。我错过了什么吗?谢谢。
【问题讨论】:
-
在 rm(list=ls()) 之后调用 gc() 来提示 R 释放内存通常是一个好习惯。
-
不,@wd11,不是。大多数这些收益都是神话般的。
-
我有什么资格和你争论——德克;但是如果我不时地抛出一个 gc() ,我已经经历过“长”的代码条纹在稳定性方面有所增加......尤其是在 Windows 上的 RStudio IDE 中运行代码时,它似乎有帮助;然而,可能是一厢情愿的想法掩盖了我的看法......
标签: r memory-management garbage-collection