R read.xlsx内存泄漏?

时间:2014-05-20 11:12:31

标签: r memory-leaks r-xlsx

我在Ubuntu 64bit(14.04)和包R上使用read.xlsx(版本3.0.2)来读取几个xlsx表。我是这样做的:

options(java.parameters = "-Xmx4g" )
require(xlsx)
d1 = read.xlsx2(file, sheetName=sheet.1)
d2 = read.xlsx2(file, sheetName=sheet.2)
d3 = read.xlsx2(file, sheetName=sheet.3)

这主要适用,但R需要更多内存,当它开始交换时,它不会在适当的时间内终止。我认为问题是在函数终止后没有释放用于读取xlsx文件的内存,因为即使我删除了所有数据(remove(d1),...),内存仍然被占用。我尝试使用read.xlsx查找ls()使用的任何旧对象,但没有临时对象......

一个有效的解决方案是读取文件直到内存已满。然后保存工作区,关闭R,重新打开R并加载已保存的工作区。但这肯定不是最好的解决方案!因此,实际的问题是:如何在完成后强制read.xlsx释放内存(并杀死子进程)?

0 个答案:

没有答案