BUG: Applet.getImage(), getAudioClip() Cause Memory/Handle Leak

ID: Q192384

The information in this article applies to:

SYMPTOMS

When loading images or audio files from an applet with getImage() or getAudioClip(), a memory and handle leak will result.

CAUSE

Images and audio clips loaded via Applet.getImage() and Applet.getAudioClip() are cached in an unbounded hash table. If you have an applet that loaded many images, memory usage will grow with each image loaded.

STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.

MORE INFORMATION

Memory usage was measured by watching the Working Set and Handle Count of the Iexplore.exe process using the Performance Monitor (Perfmon.exe) in Windows NT. As new images were loaded, the items above continued to increase, even after the java.awt.Image variable was set to null and System.gc() was called.

REFERENCES

For the latest Knowledge Base articles and other support information on Visual J++ and the SDK for Java, see the following pages on the Microsoft Technical Support site:

   http://support.microsoft.com/support/visualj/ 
   http://support.microsoft.com/support/java/ 

Additional query words:
Keywords          : kbJava 
Version           : WINDOWS:2.0,2.01,2.02,3.0
Platform          : WINDOWS
Issue type        : kbbug
Solution Type     : kbpending

Last Reviewed: September 5, 1998