I think I have a memory leak.
(they say the first step is admitting the problem, right?)
Anyway, I think I do - see attached image for heap by regions: . Green is Eden, blue/red is S0/S1, purple is old. I have unlimited tenuring (>15), lots of time passed between memory being allocated and it spilling to old gen. Hence - a memory leak. I think.
因此,问题——我如何分析泄漏情况? 你可以看到,我的爱登非常积极。 整整刻制造和销毁的物体。
是否有办法将旧的基因堆放掉? 或者说,在完全的肥皂堆放场(如果是的话,用什么工具)中发现了旧的基因?
Edit 1: Clarification: I m not doing anything that should retain objects in memory. Everything I allocate after the initial startup should die young.
Edit2: New findings: I took a heap dump, GCed like crazy and took another. The second one shows a significantly reduced level of old gen usage. The main difference between the two were objects held by finalizers. Don t finalizers run in young GC cycles? Do they always wait for a full GC to be cleaned?