Runtime heap size set in Eclipse

Viewed 203
public class Test {
        public static void main(String[] args) {
            long heapsize = Runtime.getRuntime().totalMemory();
            System.out.println("heapsize is :: " + heapsize/(1024*1024));
        }

}

The output is:

heapsize is :: 245

Does this mean my runtime has only 245M memory? My computer has 8GB memory. I doubt output this is correct, since the running of Eclipse alone will consume a lot more than 245M.

In Eclipse, I click Windows->Preferences->Java->Installed JREs, and set Default JVM arguments as follows:

-ea -Xms256m -Xmx4096M

Then run the test again. It still prints out the same number, 245. How could this happen?

Edited: from Java doc for Runtime.getRuntime().totalMemory():

Returns the total amount of memory in the Java virtual machine. 
The value returned by this method may vary over time, depending on the 
host environment.
1 Answers
Related