在Akka上使用扫描仪进行Java内存泄漏

时间:2015-01-09 04:36:06

标签: scala memory-leaks akka

enter image description here

橙色是“OldGen”,绿色是“伊甸园空间”,蓝色是“幸存者空间”。我使用YourKit进行此分析。这就是我写文件阅读代码的方式:

val inputStream = new FileInputStream("E:\\Allen\\DataScience\\train\\train.csv")
val sc = new Scanner(inputStream, "UTF-8")

var counter = 0

while (sc.hasNextLine) {

  rowActors(counter % 20) ! Row(sc.nextLine())

  counter += 1
}

sc.close()
inputStream.close()

如果由Scanner拍摄,它似乎是一大块内存。但是,我的原始文件只有5 GB大。我想知道我是不是错误地处理了文件阅读程序!如果没有,我应该如何读入和处理我的文件?我现在对垃圾收集感到非常沮丧。

1 个答案:

答案 0 :(得分:0)