Package org.eclipse.jetty.util.preventers
Jetty Util : Common Memory Leak Prevention Tooling
-
Class Summary Class Description AbstractLeakPreventer AbstractLeakPreventer Abstract base class for code that seeks to avoid pinning of webapp classloaders by using the jetty classloader to proactively call the code that pins them (generally pinned as static data members, or as static data members that are daemon threads (which use the context classloader)).AppContextLeakPreventer AppContextLeakPreventer Cause the classloader that is pinned by AppContext.getAppContext() to be a container or system classloader, not a webapp classloader.AWTLeakPreventer AWTLeakPreventer See https://issues.jboss.org/browse/AS7-3733 The java.awt.Toolkit class has a static field that is the default toolkit.DOMLeakPreventer DOMLeakPreventer See http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6916498 Prevent the RuntimeException that is a static member of AbstractDOMParser from pinning a webapp classloader by causing it to be set here by a non-webapp classloader.DriverManagerLeakPreventer DriverManagerLeakPreventer Cause DriverManager.getCallerClassLoader() to be called, which will pin the classloader.GCThreadLeakPreventer GCThreadLeakPreventer Prevents a call to sun.misc.GC.requestLatency pinning a webapp classloader by calling it with a non-webapp classloader.Java2DLeakPreventer Java2DLeakPreventer Prevent pinning of webapp classloader by pre-loading sun.java2d.Disposer class before webapp classloaders are created.LDAPLeakPreventer LDAPLeakPreventer If com.sun.jndi.LdapPoolManager class is loaded and the system property com.sun.jndi.ldap.connect.pool.timeout is set to a nonzero value, a daemon thread is started which can pin a webapp classloader if it is the first to load the LdapPoolManager.LoginConfigurationLeakPreventer LoginConfigurationLeakPreventer The javax.security.auth.login.Configuration class keeps a static reference to the thread context classloader.SecurityProviderLeakPreventer SecurityProviderLeakPreventer Some security providers, such as sun.security.pkcs11.SunPKCS11 start a deamon thread, which will use the thread context classloader.