现在的位置: 首页 > 综合 > 正文

JXL太消耗内存了

2013年10月03日 ⁄ 综合 ⁄ 共 347字 ⁄ 字号 评论关闭

最近发现JXL太消耗内存了。

读入模板,输入Excel这个过程中java 的full GC执行了10几回。这个也太影响系统的性能了。

查看代码发现可能是以下代码所致:

      Workbook workbook = Workbook.getWorkbook(模板文件);
      WritableWorkbook writeWorkbook = Workbook.createWorkbook(输出的Excel文件, workbook);

问题在于这个地方的writeWorkbook对象是workbook 的一个拷贝。也就是说内存里面放了差不多一样内容的两个东西。

这样占据了双倍的内存,JXL处理结束后,产生了大量的垃圾,导致FULL GC频繁发生。

看了一下JXL的一些代码,没发现有像POI那样不产生重复的内容的方法。

抱歉!评论已关闭.