Arnoud Glimmerveen created FELIX-6778: -----------------------------------------
Summary: Reduce number of re-creation(s) of SCR Component Registry thread Key: FELIX-6778 URL: https://issues.apache.org/jira/browse/FELIX-6778 Project: Felix Issue Type: Improvement Components: Declarative Services (SCR) Reporter: Arnoud Glimmerveen I noticed when assigning a low value to {{ds.service.changecount.timeout}} quite a lot of short-lived threads are created in quick succession during startup. I found that the current approach to cancelling a timer after successful update to the service.changecount property and the re-creating of the timer for a subsequent changecount update, especially during startup (when SCR is doing a lot of work) results in a quite lot of threads being created that are short-lived. I propose another approach that limits the threads being created. By using a ScheduledThreadPoolExecutor, the changecount update can still scheduled with its timeout, but the executor would be able to reuse the thread for subsequent updates. Also this executor can be configured to have the thread(s) be terminated after a period of time that no tasks are scheduled on the executor, thereby ensuring that there is no thread occupying resource(s) when there are no updates to the changecount. -- This message was sent by Atlassian Jira (v8.20.10#820010)