• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Memory leak problem

 
laxminarayana garlapati
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,
I am facing memory leak problem in Java.

I have written one java program to load some image files and display it in different sizes.

For this I have used BufferedImage, Graphics2D, MediaTracker, Image , JPEGImageEncoder, JPEGImageEncoderParam, RenderOp,ParameterBlock classes.
When I run this, I am getting �OutOfMemory�, "core dump" exceptions.

To avoid memory leak I have closed BufferedImage, Graphics2D objects by calling flush(), dispose() methods.

But still I am getting the same exception.
Anyhing else i need to close and any other solution for this?
 
Jesper de Jong
Java Cowboy
Saloon Keeper
Posts: 15216
36
Android IntelliJ IDE Java Scala Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Are you sure that it is a memory leak or does your program really need more than the default amount of memory (64 MB with Sun's JRE on Windows)?

You can use the -Xmx switch (see the documentation) to let the JRE allocate more memory than the default amount.

If you think it is really a memory leak, use a profiler, or maybe JConsole to find out where the memory leak is.
 
Jim Yingst
Wanderer
Sheriff
Posts: 18671
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
One possibility is the MediaTracker. If you're using a single MediaTracker for many different images, then be sure to call removeImage() when you're done with a given image. But if you're using a different MediaTracker each time, and letting each MediaTracker get GC'ed when you're done with it, then this should not be an issue.
 
laxminarayana garlapati
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,
Thank you for your reply.
I will try with -Xmc command.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic