To explain myself further ALL I had on my heap was my Instance<MyInterface>... and gc released 0.5% memory :)
I had 200 000 of them at least. They where supposed to be four singletons. My idea was inject into @ApplicationScoped and omit to give them scope because they will be @ApplicationScoped anyways... Seems every invocation of my @ApplicationScoped bean recreated all instances. What I had was unrecoverable mem leak. Now I could be doing something stupid or Instance<MyInterface> has a problem or something else... Cheers On 27 February 2015 at 19:05, Romain Manni-Bucau <[email protected]> wrote: > If dependent it will be kept in enclosing bean. > Le 27 févr. 2015 19:00, "Lars-Fredrik Smedberg" <[email protected]> a > écrit : > > So does this mean that there will be a memory leak in the case Karl >> described? >> >> I have used similar constructs before so im curios (@Inject @Provider >> <some dep scoped bean> in an @ApplicationScoped bean and called get () on >> the injected provider). >> >> I thought for a while that it might get garbage collected when the >> created bean is outof scope or maybe then there is no way for @PreDestroy >> to be called? >> >> Regards >> LF >> >> I thought that the created dep scoped bean would be >> On Feb 27, 2015 6:07 PM, "Romain Manni-Bucau" <[email protected]> >> wrote: >> >>> Yes. >>> >>> Will be destoyed with the bean where it is injected IIRC so the app here. >>> Le 27 févr. 2015 16:59, <[email protected]> a écrit : >>> >>>> Hello! I have a bean with @ApplicationScoped. When I inject >>>> Instance<MyInterface> instance and my actual beans implementing MyInstance >>>> are dependentscoped they get recreated over and over and are not gc'd. >>>> >>>> Expected behavior? >>>> >>>> Cheers >>> >>>
