Index: Client.java =================================================================== --- Client.java (revision 16337) +++ Client.java (revision 16338) @@ -19,6 +19,7 @@ import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.Executor; +import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.ThreadFactory; import java.util.concurrent.TimeUnit; @@ -54,7 +55,7 @@ private final Logger log = LoggerFactory.getLogger( this.getClass() ); private final List eventListeners = new CopyOnWriteArrayList(); - private final Executor eventListenerExecutor = Executors.newSingleThreadExecutor( + private final ExecutorService eventListenerExecutor = Executors.newSingleThreadExecutor( new ThreadFactory() { AtomicInteger threadNumber = new AtomicInteger( 1 ); @@ -476,6 +477,9 @@ public void disconnected() { + if(eventListenerExecutor != null){ + eventListenerExecutor.shutdown(); + } log.info( "Disconnected .." ); } };