[jboss-remoting-commits] JBoss Remoting SVN: r5570 - remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3.

jboss-remoting-commits at lists.jboss.org jboss-remoting-commits at lists.jboss.org
Fri Oct 23 18:30:53 EDT 2009


Author: david.lloyd at jboss.com
Date: 2009-10-23 18:30:53 -0400 (Fri, 23 Oct 2009)
New Revision: 5570

Modified:
   remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Remoting.java
Log:
Prevent the problem where an executor task awaits termination of its own executor

Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Remoting.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Remoting.java	2009-10-23 22:24:45 UTC (rev 5569)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Remoting.java	2009-10-23 22:30:53 UTC (rev 5570)
@@ -156,7 +156,16 @@
      * @return a closeable executor
      */
     public static CloseableExecutor createExecutor(final int maxThreads) {
-        return IoUtils.closeableExecutor(new ThreadPoolExecutor(1, maxThreads, 30L, TimeUnit.SECONDS, new ArrayBlockingQueue<Runnable>(50), OUR_THREAD_FACTORY, new ThreadPoolExecutor.CallerRunsPolicy()), 30L, TimeUnit.SECONDS);
+        final ThreadPoolExecutor executor = new ThreadPoolExecutor(1, maxThreads, 30L, TimeUnit.SECONDS, new ArrayBlockingQueue<Runnable>(50), OUR_THREAD_FACTORY, new ThreadPoolExecutor.CallerRunsPolicy());
+        return new CloseableExecutor() {
+            public void close() throws IOException {
+                executor.shutdown();
+            }
+
+            public void execute(final Runnable command) {
+                executor.execute(command);
+            }
+        };
     }
 
     /**



More information about the jboss-remoting-commits mailing list