You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/11/07 09:25:43 UTC
[sling-org-apache-sling-commons-threads] 04/09: SLING-1821 : Custom
thread pools should get an optional label
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 <cz...@apache.org>
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
"commits@sling.apache.org" <co...@sling.apache.org>.