• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Statement Closure in a loop: performance and memory management

 
Jigar M Gohil
Greenhorn
Posts: 25
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi All,
This is more related to performance and memory management. I have following scenario:



Here, After processing the resultset for one select query, the selectStatement reference is being assigned to new select statement and further resultset reference gets a new Resultset Object.
What happens to previous Statement & Resultset Objects?
What I understand is they become candidate for GC.
But my question is shall I close them before they get assigned new object references? From performance/memory management point of view, does it make any difference?

Thanks & Regards,
Jigar.

 
Wendy Gibbons
Bartender
Posts: 1111
Eclipse IDE Oracle VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I would close them, as they are using up database resources whilst open.
also it is best to put the closes in a finally block so it happens even if you have an exception.
 
Myyron Murray Latorilla
Ranch Hand
Posts: 65
Eclipse IDE Java Netbeans IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You need to close the statement object that's why it has a close method and relying to GC is not enough. At some point you will encounter an exception if you do not close the statement object. ResultSet implicitly closed when you close the statement.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic