java - 任务结束后如何从 Apache POI 工作簿中释放内存?

标签 java memory apache-poi


我打开了一个大型 excel 文件作为 Apache POI 工作簿(使用 VM args 设置最大内存大小)

成功打开文件后,我读取了所需的数据并完成了我的工作。

现在我想继续进行其他任务的编程,但在我这样做之前我想确保我释放了工作簿用完的内存。

我检查了 API 文档,但没有像 workbook.close() 这样的东西。

有人可以建议释放工作簿占用的内存的正确方法是什么吗?

最佳答案

我相信您只需要让对象超出范围,让 GC 完成它的工作。您可能还想考虑使用流式 POI 框架,因为它使用的内存更少。

Streaming Workbook

关于java - 任务结束后如何从 Apache POI 工作簿中释放内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8126436/

相关文章:

java - java POI 按列名读取Excel

java - 实现基本的 REST API - ServletException

java - 使用 JDBC 将短数组保存到 MySQL 数据库?

java - ReentrantReadWriteLock 中的公平锁定

java - 尝试插入重复键时抛出正确的异常?

c - 没有 MMU 的内存保护

c++ - 使用 unique_ptr 实例化类集合成员

java - 如何使用 Apache POI 设置单元格背景?

ios - React-Native 大量内存使用和仅来自 flatlist iOS 的崩溃

java - 如何有选择地将边框应用于 Apache POI 中的 docx 表?