[ https://issues.apache.org/jira/browse/FELIX-6243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17061728#comment-17061728 ]
Karl Pauls commented on FELIX-6243: ----------------------------------- Hm, I'm not sure I understand the problem yet. The resolver threads should timeout after a minute which should make this similar to the RESOLVER_PARALLELISM=1 case (after a minute of inactivity). I guess the question is what is holding on to the felix object in the first place... > Link to root Felix object leaks to GC root > ------------------------------------------ > > Key: FELIX-6243 > URL: https://issues.apache.org/jira/browse/FELIX-6243 > Project: Felix > Issue Type: Bug > Affects Versions: framework-6.0.3 > Reporter: Andrey Davydov > Priority: Major > Attachments: felix.png > > > Tested on java8. > Felix object creates StatefulResolver and then StatefulResolver get link to > Felix. > StatefulResolver creates Executor in getExecutor() using nested class as > ThreadFactory (when FelixConstants.RESOLVER_PARALLELISM greater then 1) > > So every thread in Executor has link to Executor > Executor has link to ThreadFactory > ThreadFactory has link to StatefulResolver, because it is nested > StatefulResolver has link to Felix > > And it is the way from GC root to Felix and GC can't collect Felix after > Felix.stop() and all external refs to Felix cut. > > > > -- This message was sent by Atlassian Jira (v8.3.4#803005)