If an application’s behavior is dependent on the amount of available memory, then this code fragment can be used to determine what action an application should take. For example, a text editor may not allow any more files to be opened, when the amount of free memory falls to a tenth of the total available memory.
The code also warns when available memory falls below a certain level, and attempts to free up memory.
public class MemTester{static long totalMemory;static long freeMemory;public static void main(String[] args) { Runtime runtime = Runtime.getRuntime(); totalMemory = runtime.totalMemory(); freeMemory = runtime.freeMemory(); if (freeMemory < totalMemory/4 ) { System.out.println("Running low on memory"); System.out.println("Attempting to free up memory"); System.gc(); } else System.out.println("Currently " + freeMemory _+ " bytes are free outof " + totalMemory + " bytes"); }}