public Thread newThread(Runnable runnable) { String threadName = BasicThreadPool.this.toString() + "-" + lastThreadNumber.incrementAndGet(); Thread thread = new Thread(threadGroup, runnable, threadName); thread.setDaemon(true); BasicThreadPool.this.setDefaultThreadContextClassLoader(thread); return thread; } }
@Override protected void afterExecute(Runnable r, Throwable t) { try { super.afterExecute(r, t); } finally { BasicThreadPool.this.setDefaultThreadContextClassLoader(Thread.currentThread()); } }