Author: remm
Date: Thu Nov 15 14:59:23 2018
New Revision: 1846659

URL: http://svn.apache.org/viewvc?rev=1846659&view=rev
Log:
Refactor to reduce code duplication.

Modified:
    tomcat/trunk/java/org/apache/catalina/core/StandardService.java

Modified: tomcat/trunk/java/org/apache/catalina/core/StandardService.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardService.java?rev=1846659&r1=1846658&r2=1846659&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/core/StandardService.java (original)
+++ tomcat/trunk/java/org/apache/catalina/core/StandardService.java Thu Nov 15 
14:59:23 2018
@@ -22,9 +22,7 @@ import java.beans.PropertyChangeSupport;
 import java.util.ArrayList;
 import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.ScheduledThreadPoolExecutor;
-import java.util.concurrent.ThreadFactory;
 import java.util.concurrent.TimeUnit;
-import java.util.concurrent.atomic.AtomicInteger;
 
 import javax.management.ObjectName;
 
@@ -43,6 +41,7 @@ import org.apache.catalina.util.Lifecycl
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 import org.apache.tomcat.util.res.StringManager;
+import org.apache.tomcat.util.threads.TaskThreadFactory;
 
 
 /**
@@ -273,7 +272,7 @@ public class StandardService extends Lif
         } else {
             ScheduledThreadPoolExecutor scheduledThreadPoolExecutor =
                     new ScheduledThreadPoolExecutor(1,
-                            new UtilityThreadFactory(getName() + "-utility-", 
utilityThreadsAsDaemon));
+                            new TaskThreadFactory(getName() + "-utility-", 
utilityThreadsAsDaemon, Thread.NORM_PRIORITY));
             scheduledThreadPoolExecutor.setMaximumPoolSize(threads);
             scheduledThreadPoolExecutor.setKeepAliveTime(10, TimeUnit.SECONDS);
             scheduledThreadPoolExecutor.setRemoveOnCancelPolicy(true);
@@ -725,27 +724,6 @@ public class StandardService extends Lif
         return "type=Service";
     }
 
-    private static class UtilityThreadFactory implements ThreadFactory {
-        private final ThreadGroup group;
-        private final AtomicInteger threadNumber = new AtomicInteger(1);
-        private final String namePrefix;
-        private final boolean daemon;
-
-        public UtilityThreadFactory(String namePrefix, boolean daemon) {
-            SecurityManager s = System.getSecurityManager();
-            group = (s != null) ? s.getThreadGroup() : 
Thread.currentThread().getThreadGroup();
-            this.namePrefix = namePrefix;
-            this.daemon = daemon;
-        }
-
-        @Override
-        public Thread newThread(Runnable r) {
-            Thread thread = new Thread(group, r, namePrefix + 
threadNumber.getAndIncrement());
-            thread.setDaemon(daemon);
-            return thread;
-        }
-    }
-
     @Override
     public ScheduledExecutorService getUtilityExecutor() {
         return utilityExecutorWrapper;



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to