src/share/classes/com/sun/jndi/ldap/LdapPoolManager.java

Print this page

        

*** 37,46 **** --- 37,47 ---- import java.security.AccessController; import java.security.PrivilegedAction; import com.sun.jndi.ldap.pool.PoolCleaner; import com.sun.jndi.ldap.pool.Pool; + import sun.misc.InnocuousThread; /** * Contains utilities for managing connection pools of LdapClient. * Contains method for * - checking whether attempted connection creation may be pooled
*** 161,171 **** } } if (idleTimeout > 0) { // Create cleaner to expire idle connections ! new PoolCleaner(idleTimeout, pools).start(); } if (debug) { showStats(System.err); } --- 162,182 ---- } } if (idleTimeout > 0) { // Create cleaner to expire idle connections ! PrivilegedAction<Void> pa = new PrivilegedAction<Void>() { ! public Void run() { ! Thread t = InnocuousThread.newSystemThread( ! "LDAP PoolCleaner", ! new PoolCleaner(idleTimeout, pools)); ! assert t.getContextClassLoader() == null; ! t.setDaemon(true); ! t.start(); ! return null; ! }}; ! AccessController.doPrivileged(pa); } if (debug) { showStats(System.err); }