On Dec 5, 2007, at 4:29 AM, Vamsavardhana Reddy wrote:
On Dec 4, 2007 11:23 PM, Anita Kulshreshtha <[EMAIL PROTECTED]>
wrote:
It is not clear to me if this is part of the earlier code or a
separate program. If it is part of the JMX code, then Runtime is from
the local jvm not remote. The non heap Memory for this program in
either case is negligible.
You could start G with -Dcom.sun.management.jmxremote. Start
jconsole and click on the Memory tab to get the whole picture.
I have started G with the said option and hooked up jconsole. The
HeapMemoryUsage is showing exactly what Runtime is returning.
It is only the heap memory exhaustion that results in OOME. I guess
I am ok for now as this is what I am interested in.
One will get OOM Exceptions if there is insufficient native memory to
satisfy a Java request. For instance, when creating a thread, the OS
has to allocate some native memory to create the Java Object. If that
native allocation fails you will get an OOM even though you have
plenty of heap memory.