Dmitry Konstantinov created FELIX-5247: ------------------------------------------
Summary: Reduce number of threads created by Resolver during a startup of OSGi-based applications Key: FELIX-5247 URL: https://issues.apache.org/jira/browse/FELIX-5247 Project: Felix Issue Type: Improvement Components: Framework, Resolver Affects Versions: resolver-1.8.0, framework-5.4.0 Reporter: Dmitry Konstantinov Thread creation is a quite expensive operation, so it make sense to reuse threads in ResolverImpl if they are needed to split some task and do it in parallel. For example: Apache Karaf startup with several features can install about 300 bundles. If each one will create Runtime.getRuntime().availableProcessors() threads - so, during a startup about 1000 threads will be created only by Resolver (in case of a server machine even much more). Thread creation takes let's say (depends on machine, JDK, OS, etc) about 10-20 ms, so we are spending about 1-2 seconds of startup time only to create some threads. it make sense to create a thread pool once (with a configurable thread number) and reuse it for resolving of different bundles. -- This message was sent by Atlassian JIRA (v6.3.4#6332)