Use ForkJoinPool instead of own ThreadPool
Project: http://git-wip-us.apache.org/repos/asf/commons-rdf/repo Commit: http://git-wip-us.apache.org/repos/asf/commons-rdf/commit/96c21ea5 Tree: http://git-wip-us.apache.org/repos/asf/commons-rdf/tree/96c21ea5 Diff: http://git-wip-us.apache.org/repos/asf/commons-rdf/diff/96c21ea5 Branch: refs/heads/fluent-parser Commit: 96c21ea5d97b14011e9bceb19d16d7ccf4fe2732 Parents: 092c465 Author: Stian Soiland-Reyes <st...@apache.org> Authored: Thu Feb 16 11:52:58 2017 +0000 Committer: Stian Soiland-Reyes <st...@apache.org> Committed: Wed Feb 14 18:57:54 2018 +0000 ---------------------------------------------------------------------- .../commons/rdf/simple/experimental/AbstractRDFParser.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/commons-rdf/blob/96c21ea5/commons-rdf-simple/src/main/java/org/apache/commons/rdf/simple/experimental/AbstractRDFParser.java ---------------------------------------------------------------------- diff --git a/commons-rdf-simple/src/main/java/org/apache/commons/rdf/simple/experimental/AbstractRDFParser.java b/commons-rdf-simple/src/main/java/org/apache/commons/rdf/simple/experimental/AbstractRDFParser.java index 0ef4d68..55c8de8 100644 --- a/commons-rdf-simple/src/main/java/org/apache/commons/rdf/simple/experimental/AbstractRDFParser.java +++ b/commons-rdf-simple/src/main/java/org/apache/commons/rdf/simple/experimental/AbstractRDFParser.java @@ -25,6 +25,7 @@ import java.nio.file.Path; import java.util.Optional; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import java.util.concurrent.ForkJoinPool; import java.util.concurrent.Future; import java.util.function.Consumer; @@ -58,9 +59,6 @@ import org.apache.commons.rdf.simple.SimpleRDF; */ public abstract class AbstractRDFParser<T extends AbstractRDFParser<T>> implements RDFParser, Cloneable { - public static final ThreadGroup threadGroup = new ThreadGroup("Commons RDF parsers"); - private static final ExecutorService threadpool = Executors.newCachedThreadPool(r -> new Thread(threadGroup, r)); - // Basically only used for creating IRIs private static RDF internalRdfTermFactory = new SimpleRDF(); @@ -213,6 +211,7 @@ public abstract class AbstractRDFParser<T extends AbstractRDFParser<T>> implemen private Consumer<Quad> target; private Dataset targetDataset; private Graph targetGraph; + private ExecutorService threadpool = ForkJoinPool.commonPool(); @SuppressWarnings("unchecked") @Override @@ -531,6 +530,7 @@ public abstract class AbstractRDFParser<T extends AbstractRDFParser<T>> implemen @Override public Future<ParseResult> parse() throws IOException, IllegalStateException { final AbstractRDFParser<T> c = prepareForParsing(); + return threadpool.submit(() -> { c.parseSynchronusly(); return null;