diff --git a/JIoEndpoint.java b/JIoEndpoint.mine index b3244fb..8961933 100644 --- src/java/org/apache/tomcat/util/net/JIoEndpoint.java +++ src/java/org/apache/tomcat/util/net/JIoEndpoint.java @@ -152,7 +152,7 @@ public class JIoEndpoint { * Maximum amount of worker threads. */ protected int maxThreads = 200; - public void setMaxThreads(int maxThreads) { this.maxThreads = maxThreads; } + public void setMaxThreads(int maxThreads) { this.maxThreads = maxThreads; this.workers.resizeTo(maxThreads); } public int getMaxThreads() { return maxThreads; } @@ -801,6 +801,16 @@ public class JIoEndpoint { public int size() { return (end); } + + /** + * Resize the queue + * @param newSize + */ + public void resizeTo(int newSize){ + Worker[] newWorkers = new Worker[newSize]; + System.arraycopy(workers, 0, newWorkers, 0, workers.length); + this.workers = newWorkers; + } } }