我正在研究spring web mvc,最近遇到了java.lang.OutOfMemoryError: Java heap space。
所以,我正在阅读它,而我正在做的主要错误是我没有尊重使用过的对象。所以 GC 并没有清理大量内存。
现在的问题是何时取消引用它。
这是基本的输出流程:
From front end user sends a request
server calls a library with the users request
library returns it a big chunk of array of results.
server forwards it to front end.
现在直到这一点我无法取消引用结果数组,因为我需要结果对象。我对么 ?因此,当用户发送新请求时,我应该清理结果数组并使用新请求调用库。
我还使用 -XX:+HeapDumpOnOutOfMemoryError 来获取转储文件。但我没有在项目文件夹中看到转储文件。在日志中,我看到创建了转储文件。有没有人遇到过这种情况。