簡體   English   中英

Spring SingletonBeanFactoryLocator bean銷毀

[英]Spring SingletonBeanFactoryLocator bean destruction

在使用SingletonBeanFactoryLocator及其BeanFactoryReference我發現當我在BeanFactoryReference實例上調用release時,上下文中的一些bean被銷毀但有些仍繼續存在。 我的假設是所有這些都會被摧毀。

這樣做的結果是,下次我使用具有相同鍵的SingletonBeanFactoryLocatorBeanFactoryReference ,而不是獲取全新的bean時,我從前面的上下文中獲取了一些bean。 我無法找到這背后的模式。 這些豆子是單身,但其中一些是重新創造的,其中一些是從舊的環境中繼續進行的。 為什么會這樣?

示例:假設我在上下文中有bean A,B和C. 所有都是單例,B注入A,C注入B.

我得到BeanFactoryReference ,獲取這些bean然后釋放BeanFactoryReference

然后我再次獲得BeanFactoryReference ; bean A和B是新的,但C來自舊的上下文(我打印了他們的系統哈希碼來檢查它)。

這在Spring中不是問題。 它確實清除了所有豆類。 使用這個代碼時出現了一個小故障,這使得它看起來好像有些bean沒有被銷毀但是被重用了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM