I am working on a GUI Intensive (using all swing components and a couple of AWT components) program and it is finished but keeps running out of memory after running for a day. It is a real-time system so it needs to keep running. I am running System.gc as a separate thread that kicks off when the system has nothing to do. It is reporting 60% free memory but I still get OutofMemory Errors. Any ideas/help?
I am running on a Solaris Ultra Machine with 128 MB RAM.
The Swap space is set to 256 MB and I have JDK 1.2.2 installed on it.
I run the program with the following command:
java -Xms64M -Xmx128M programname
Again it says I have 60% free mem but still get the outofMemory errors and for some reason am using very little of the swap space.
I am looking for ways of Memory management, freeing memory, using the VM to the MAX, what components are memory intensive etc.
PS: I will increase points as needed.