标签: java memory-leaks jna
我必须使用一个设计为运行一次,输出文件并继续前进的库。我需要以简化的方式使用它作为我的Java程序的数据。经过我的自定义驱动程序的几次迭代后,我注意到它有一个巨大的性能下降,所以我开始卸载.so并重新加载它。 (这是通过将实例设置为null,然后请求gc来实现的 - 我知道这不完美。)这大大提高了操作速度,但内部有很多泄漏,当卸载库时没有释放,它只是在200次迭代后迅速泄漏GB值的数据。
除了试图操纵驱动程序的内部工作方式之外,还有什么方法可以清除泄漏的内存?或者这是不可能的呢?