R中的垃圾收集

时间:2016-04-15 08:54:02

标签: r garbage-collection

我开始在R中使用gc()进行垃圾收集。我有16 GB的RAM,有时,使用此命令时,最多可释放10 GB RAM。

在函数内部使用gc()是否有意义?通常,我编写/使用的函数几乎都需要所有可用的RAM。或者R 可靠地清理仅在函数内部使用的内存吗?

示例:

f <- function(x) {
  # do something
  y <- doStuff(x)

  # do something else
  z <- doMoreStuff(y)

  # garbage collection
  gc()

  # return result
  return(z)
}

1 个答案:

答案 0 :(得分:0)

调用gc()基本上没有意义,因为当需要更多内存时,R会自动调用它。我可以想到明确调用gc()的唯一原因是,如果另一个程序需要R占用的内存。