在定義分別與java <init>
和finalize()方法相同的bean時,是否正在寫入IOC init方法和destroy-met? 如果是這樣,那麼像finalize()方法被垃圾收集器調用,是否也是由GC調用的屬性destroy-method中指定的方法? 何時調用destroy-method屬性中的方法?Spring初始化方法和銷燬方法
-2
A
回答
1
不,它不會等待GC,而是要停止春季環境的明確決定。例如,如果程序員顯式調用FactoryBean.destroySingletons(),或者通過調用registerShutdownHook()隱式調用,這意味着系統退出時會發生破壞。
如果你沒有看到你的shutdonw方法被調用,這可能是因爲你只是允許「主」線程完成而沒有明確地破壞上下文。如果是(比方說)的ClassPathXmlApplicationContext,嘗試上述registerShutdownHook
BTW注意它僅適用於單身作用域bean(這是默認設置,也是最常用的,類型)
1
它們沒有與垃圾收集器或任何JVM生命週期鏈接,而是與您的容器鏈接。例如init-method將在實例化和屬性設置後調用。另一個,當你的上下文關閉時,將會調用destroy-method。
相關問題
- 1. Spring初始化方法params
- 2. VideoJS - 無法銷燬並初始化
- 3. 初始化方法
- 4. Spring portlet mvc初始化方法
- 5. angularjs銷燬和初始化事件
- 6. 春豆銷燬方法
- 7. Laravel 5.0銷燬方法
- 8. NSArray的初始化方法
- 9. NSMutableArray初始化方法
- 10. 初始化方法調用
- 11. dll初始化方法
- 12. Rails模型關聯和銷燬方法
- 13. 在rails和Mongoid中銷燬方法
- 14. 瞬間JS初始化和UTC()方法
- 15. iPhone「addSubView」方法和視圖初始化
- 16. 依賴注入和初始化方法
- 17. 整數初始化和方法錯誤
- 18. initWithNavigationBarClass和UINavigationBar的初始化方法
- 19. 類初始化和同步類方法
- 20. 切片類型的初始化方法無法初始化
- 21. java servlets初始化並銷燬
- 22. 爲什麼-init實例方法和+初始化類的方法?
- 23. 使用超類方法初始化與初始化方法之間的區別
- 24. 書寫方法銷燬並創建鏈接銷燬對象
- 25. 的Objective-C初始化/初始化方法
- 26. Guice在初始化對象後調用初始化方法
- 27. 用水豚測試銷燬方法
- 28. jQuery Tools - > Tooltip銷燬方法?
- 29. jQuery:向插件添加銷燬方法
- 30. TabHost方法來銷燬標籤?