| Author |
Statement Closure in a loop: performance and memory management
|
Jigar M Gohil
Greenhorn
Joined: Dec 14, 2011
Posts: 9
|
|
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
Joined: Oct 21, 2008
Posts: 1098
|
|
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 latorilla
Greenhorn
Joined: Dec 10, 2009
Posts: 26
|
|
|
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.
|
 |
 |
|
|
subject: Statement Closure in a loop: performance and memory management
|
|
|