Author: fhanik
Date: Wed Oct 17 08:41:20 2007
New Revision: 585541
URL: http://svn.apache.org/viewvc?rev=585541&view=rev
Log:
http://issues.apache.org/bugzilla/show_bug.cgi?id=43642
Modified:
tomcat/sandbox/gdev6x/java/org/apache/catalina/core/StandardThreadExecutor.java
Modified:
tomcat/sandbox/gdev6x/java/org/apache/catalina/core/StandardThreadExecutor.java
URL:
http://svn.apache.org/viewvc/tomcat/sandbox/gdev6x/java/org/apache/catalina/core/StandardThreadExecutor.java?rev=585541&r1=585540&r2=585541&view=diff
==============================================================================
---
tomcat/sandbox/gdev6x/java/org/apache/catalina/core/StandardThreadExecutor.java
(original)
+++
tomcat/sandbox/gdev6x/java/org/apache/catalina/core/StandardThreadExecutor.java
Wed Oct 17 08:41:20 2007
@@ -19,6 +19,7 @@
import java.util.Collection;
import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.RejectedExecutionException;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
@@ -28,7 +29,6 @@
import org.apache.catalina.LifecycleException;
import org.apache.catalina.LifecycleListener;
import org.apache.catalina.util.LifecycleSupport;
-import java.util.concurrent.RejectedExecutionException;
public class StandardThreadExecutor implements Executor {
@@ -52,6 +52,8 @@
protected AtomicInteger activeCount = new AtomicInteger(0);
private LifecycleSupport lifecycle = new LifecycleSupport(this);
+
+ protected boolean prestartminSpareThreads = false;
// ---------------------------------------------- Constructors
public StandardThreadExecutor() {
//empty constructor for the digester
@@ -74,6 +76,10 @@
activeCount.addAndGet(-1);
}
};
+ if (prestartminSpareThreads) {
+ executor.prestartAllCoreThreads();
+ }
+
taskqueue.setParent( (ThreadPoolExecutor) executor);
lifecycle.fireLifecycleEvent(AFTER_START_EVENT, null);
}
@@ -127,6 +133,10 @@
return name;
}
+ public boolean isPrestartminSpareThreads() {
+ return prestartminSpareThreads;
+ }
+
public void setThreadPriority(int threadPriority) {
this.threadPriority = threadPriority;
}
@@ -154,7 +164,11 @@
public void setName(String name) {
this.name = name;
}
-
+
+ public void setPrestartminSpareThreads(boolean prestartminSpareThreads) {
+ this.prestartminSpareThreads = prestartminSpareThreads;
+ }
+
/**
* Add a LifecycleEvent listener to this component.
*
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]