[ http://issues.apache.org/jira/browse/XALANJ-2128?page=comments#action_66391 ] Faizan Ahmed commented on XALANJ-2128: --------------------------------------
There is no guarantee that finalizers will be executed promptly. It can take arbitrarily long between the time that an object becomes unreachable and the time that its finalizer is executed. The promptness with which finalizers are executed is primarily a function of the garbage collection algorithm, which varies widely from JVM implementation to JVM implementation. The behavior of a program that depends on the promptness of finalizer execution may likewise vary. It is entirely possible that such a program will run perfectly on the JVM on which you test it and then fail miserably on the other JVM. Tardy finalization is not just a theoretical problem. Providing a finalizer for a class can arbitrarily delay reclamation of its instances. > Finalizer in XRTreeFrag (xalan.jar) causes lots of loitered objects (memory > leak). > ---------------------------------------------------------------------------------- > > Key: XALANJ-2128 > URL: http://issues.apache.org/jira/browse/XALANJ-2128 > Project: XalanJ2 > Type: Bug > Components: Xalan > Versions: 2.6 > Reporter: Faizan Ahmed > Attachments: XRTreeFrag_GCRoots_1.jpg, XRTreeFrag_GCRoots_2.jpg, > XRTreeFrag_RetainedObjects.jpg > > Finalizer in XRTreeFrag (xalan.jar) causes lots of loitered objects. Since > there is a clean up method destruct() available and all the clients should > call this clean up method rather rely on finalizer. > Because of finalizer in this class these objects gets put on finalizer queue > and dont get cleaned when they go out of scope. Finalizer is provided > probably as a safty net here but this is hurting swearly. > The fix should be simple remove finalizer from this class. I have tested it > and it did clean up the resources and fix the memory leak. > The attached snapshots should help to explain this fact (both leaked Objects > and after the fix no memory leak because of XRTreeFrag). -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
