×
Namespaces

Variants
Actions
Revision as of 05:29, 7 August 2012 by hamishwillee (Talk | contribs)

How to find out the total memory in Java ME

From Nokia Developer Wiki
Jump to: navigation, search

The current total heap memory of VM is retrieved using the following code

Runtime runt=Runtime.getRuntime();
long totalMemory = runt.totalMemory();

This method however doesn't return all available possible memory in all Java VM implementations like in S60. S60 uses a VM in allocates it's VM heap memory dynamically from operating system. During startup certain amount of heap is reserved but when the memory will be used and the free amount is becoming smaller VM dynamically allocates more heap from OS. The VM also releases unnecessary heap back to operating system. This kind of implementation is important in operating environment with true multitasking capabilities like S60.

In S60 3rd Edition devices there is a system property
com.nokia.memoryramfree

that can be used to query the available RAM available in the operating system. This is much more reliable estimate of available RAM. Although it should be understood that any other application may use this RAM.

Article Metadata
Code ExampleTested with
Devices(s): C3-01, Asha 305, E7-00
Compatibility
Device(s): All
Article
Created: jaakl (15 Sep 2009)
Updated: skalogir (04 Nov 2011)
Reviewed: skalogir (19 Apr 2011)
Last edited: hamishwillee (07 Aug 2012)
80 page views in the last 30 days.