I’m working on some serious memory leaks we have at Fuze.tv. Some of them led me to try and reproduce memory releasing issue with a sample app.
Steps to reproduce:
I’ve made a self-explanatory video and a sample app to reproduce the issue.
In the attached video the shown scenario is:
- Loading an iframe to the DOM (not using any platform/system/native calls at all).
- In the iframe, reloading a heavy component (a lot of network and rendering there).
- Now we can see memory consumption going up.
- After removing the iframe -> in the dev-tools memory profiler we can see it is fully released while in Overwolf Task Manager, we saw a memory drop but yet it takes hundreds of megabytes.
(I’m pretty sure the same behaviour can be reached without an iframe, just by using some heavy resources)
Maybe there’s a very-slow garbage collection there, but I’ve waited for a really long time (> 0.5 hour) to see if something changes.
Impact for my app: high
- Our app is pretty resource-hungry so in normal use, there are cases with a process growing up to 3GB in a few minutes of usage.
- We have complaints from our users about the memory consumption of Overwolf process (that’s what they see in the task manager).
Do you currently have a workaround?
Actually - no.
We are working to eliminate memory leaks in our code, and we know that fully closing the app releases the memory. It’s not a real solution or workaround.
Logs (taken after recording the video):