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: [email protected]
For additional commands, e-mail: [email protected]