|
Fred, Do you know how the iSeries JVM handles soft references and their impact on the garbage collection cycle? Does the iSeries JVM collect them in LRU order or use some other algorithm? This document covers most regular cases but doesn't describe soft references. It also implies that there is a phantom reference: http://www.ibm.com/servers/eserver/iseries/perfmgmt/pdf/tuninggc.pdf David Morris >>> kulack@us.ibm.com 11/15/02 09:33AM >>> On 11/14/2002 at 03:05:33 PM, java400-l-admin@midrange.com wrote: An object gets destroyed (garbage collected) only when there is no reference to it. When one stores an object into a Map, the Map has a reference to it. To destroy this object one has to remove this entry from Map in addition to setting other references to null. --- end of excerpt --- Actually, from a Java language standpoint, thats not quite complete. Objects may conceivably never be garbage collected. The object gets destroyed when there is no reference to it AND the JVM needs more memory (because its currently out) and/or decides to garbage collect it for other reasons. 1) A close() or destroy() method is typical model for what you want to do. When the user calls close() or destroy(), take your action. 2) Also take your action in the finalize() method in case the user leaks the object 3) The weak reference would be a good mechanism to allow the garbage collector to claim your object (and you'd put some code in to detect it), but you still probably want #1 and #2 in that case anyway.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.