It is requested that some method be added to the JVM so that a FullGC can be carried out at some time *other* than when the system has reached 100% memory utilisation. When a system is at 100% utilisation, it tends to mean it is under heavy load just then, and so this is in fact the *least* helpful time to pause for a while to clean up.
What the customers requesting this would prefer is to be able to set other heuristics for this, like for instance to allow a FullGC when memory is over 80% but CPU utilisation is currently quite low. Or to add a method, as suggested in the synopsis, so that if the application becomes aware that memory is an issue (through a Runtime.freeMemory() and Runtime.totalMemory()) and knows that it's going to be idle for a short while, it can suggest a GC sweep now rather than later, at a less opportune moment.
What the customers requesting this would prefer is to be able to set other heuristics for this, like for instance to allow a FullGC when memory is over 80% but CPU utilisation is currently quite low. Or to add a method, as suggested in the synopsis, so that if the application becomes aware that memory is an issue (through a Runtime.freeMemory() and Runtime.totalMemory()) and knows that it's going to be idle for a short while, it can suggest a GC sweep now rather than later, at a less opportune moment.
- relates to
-
JDK-4140301 (gc) JVM lacks mechanism for responding to low system memory conditions
-
- Closed
-