This is an automated email from the ASF dual-hosted git repository. rombert pushed a commit to annotated tag org.apache.sling.commons.threads-3.1.0 in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git
commit b92d2c593341ac0fbb2dd54ea10e63c0ab7066a9 Author: Carsten Ziegeler <[email protected]> AuthorDate: Wed Oct 6 14:16:16 2010 +0000 SLING-1821 : Custom thread pools should get an optional label git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/bundles/commons/threads@1005048 13f79535-47bb-0310-9956-ffa450edef68 --- pom.xml | 2 +- .../org/apache/sling/commons/threads/ThreadPoolManager.java | 12 ++++++++++++ .../sling/commons/threads/impl/DefaultThreadPoolManager.java | 7 ++++++- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index c488de8..7a25b7a 100644 --- a/pom.xml +++ b/pom.xml @@ -58,7 +58,7 @@ org.apache.sling.commons.threads.impl.Activator </Bundle-Activator> <Export-Package> - org.apache.sling.commons.threads;version=3.0.0 + org.apache.sling.commons.threads;version=3.1.0 </Export-Package> <Private-Package> org.apache.sling.commons.threads.impl diff --git a/src/main/java/org/apache/sling/commons/threads/ThreadPoolManager.java b/src/main/java/org/apache/sling/commons/threads/ThreadPoolManager.java index e94a116..871729e 100644 --- a/src/main/java/org/apache/sling/commons/threads/ThreadPoolManager.java +++ b/src/main/java/org/apache/sling/commons/threads/ThreadPoolManager.java @@ -47,6 +47,18 @@ public interface ThreadPoolManager { ThreadPool create(ThreadPoolConfig config); /** + * Create a new thread pool with this configuration. + * A thread pool must be released when not used anymore with the + * {@link #release(ThreadPool)} method. + * @param config The thread pool configuration. + * @param label An optional label for the thread pool. The label + * will be appended to the name of the pool. + * @return A new thread pool. + * @since 3.1 + */ + ThreadPool create(ThreadPoolConfig config, String label); + + /** * Release the thread pool again. */ void release(ThreadPool pool); diff --git a/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPoolManager.java b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPoolManager.java index 0d70f61..e2cd301 100644 --- a/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPoolManager.java +++ b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPoolManager.java @@ -154,10 +154,15 @@ public class DefaultThreadPoolManager * @see org.apache.sling.commons.threads.ThreadPoolManager#create(org.apache.sling.commons.threads.ThreadPoolConfig) */ public ThreadPool create(ThreadPoolConfig config) { + return this.create(config, null); + } + + public ThreadPool create(ThreadPoolConfig config, String label) { if ( config == null ) { throw new IllegalArgumentException("Config must not be null."); } - final String name = "ThreadPool-" + UUID.randomUUID().toString(); + final String name = "ThreadPool-" + UUID.randomUUID().toString() + + (label == null ? "" : " (" + label + ")"); final Entry entry = new Entry(null, config, name); synchronized ( this.pools ) { this.pools.put(name, entry); -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
