ContainerControlledLifetimeManager和HierarchicalLifetimeManager之間的一般區別是什麼?我知道ContainerControlledLifetimeManager表示單身,即DI容器將爲每個需要依賴關係的類型創建一個新實例。我讀了關於Understanding Lifetime Managers的有用文章。我將由容器創建的實例的哈希代碼與不同的終生管理者進行了比較。如果我使用ContainerControlledLifetimeManager,每個請求都得到相同的實例,但是當我使用HierarchicalLifetimeManager時,我得到了不同的哈希代碼。正如文章中所寫,每個子容器都會創建它自己的實例。我不完全理解它。父母和孩子是否有相同的實例?如果我沒有孩子會怎麼樣?當我應該使用這個終生管理者?請你能解釋給我嗎?ContainerControlledLifetimeManager和HierarchicalLifetimeManager之間的主要區別是什麼?
0
A
回答
-1
ContainerControlledLifetimeManager
解析註冊類型的單一實例作用域到容器
HierarchicalLifetimeManager
解析註冊類型的單一實例作用域到執行的分辨率容器的壽命(但不是必須地,所述的壽命其中類型登記容器)
如果你的應用程序只利用一個單一的容器,有HierarchicalLifetimeManager
和ContainerControlledLifetimeManager
之間的行爲沒有什麼區別。然而,我如果您的應用程序爲每個會話/請求創建子容器並解決使用這些子容器,那麼您可以有效地獲得每個會話的註冊類型的單例實例/請求
相關問題
- 1. java中的Array和Hashmap之間的主要區別是什麼?
- 2. CTE和TEMP表格之間的主要區別是什麼?
- 3. 框架和工具包之間的主要區別是什麼?
- 4. Java SE和Java EE之間的主要區別是什麼?
- 5. G1GC和SGen GC之間的主要區別是什麼
- 6. VB Express 2008(pro)和2010之間的主要區別是什麼?
- 7. C++中stdlib.h和cstdlib之間的主要區別是什麼?
- 8. Python和PHP之間的主要區別是什麼?
- 9. AsyncTask()和Handler()之間的主要區別是什麼?
- 10. Rails 1.X和2.X之間的主要區別是什麼
- 11. ReadOnly和Enabled之間的主要區別是什麼?
- 12. Sinatra和Ramaze之間的主要區別是什麼?
- 13. logstash和apache storm/spark streaming之間的主要區別是什麼?
- 14. Compiler和Transpiler之間的主要區別是什麼
- 15. 什麼是Haskell,python和c函數之間的主要區別?
- 16. Ruby 1.8.6和1.9.1之間的主要區別是什麼?
- 17. Dictionary和Hashtable之間的主要區別是什麼
- 18. android中asynctask和thread之間的主要區別是什麼?
- 19. 在VB.net ADODB和SqlClient之間的主要區別是什麼
- 20. SVN客戶端和API之間的主要區別是什麼?
- 21. NSURLConnection connectionWithRequest:delegate和sendAsynchronousRequest:queue:completionHandler之間的主要區別是什麼?
- 22. include_once和require_one之間的主要區別是什麼?
- 23. kohana 3.0.x和3.1.0之間的主要區別是什麼?
- 24. freeglut和glut之間的主要區別是什麼
- 25. Meteor,Ember.js和Backbone.js之間的主要區別是什麼?
- 26. Docker和Kubernetes之間的主要區別是什麼
- 27. Socialauth,Scribe-Java和Spring Social之間的主要區別是什麼?
- 28. Ext.Direct Pack和Ext.Air Pack之間的主要區別是什麼
- 29. FLTK 1.1和1.3之間的主要區別是什麼
- 30. AWS Docker和Hadoop Clusters之間的主要區別是什麼?