首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在静态方法中实例化Spring.Net上下文会导致内存泄漏

在静态方法中实例化Spring.Net上下文会导致内存泄漏
EN

Stack Overflow用户
提问于 2009-10-29 06:36:51
回答 1查看 401关注 0票数 0

最近遇到了这个问题,想知道是否有人能给我一个很好的解释。我正在做一些重构,并创建了一个spring上下文,以便从嵌入式配置文件中获取已配置的服务,如下所示:

var myService = new XmlApplicationContext("assembly://MyAssembly/MyNamespace/MyService.config").GetObject( "myService") as MyService;

通常情况下,这似乎工作得很好,但在这种情况下,因为它是在静态方法中,它导致了内存泄漏,我想知道为什么,所以我在未来避免了这种事情。该方法一开始就不应该是静态的,但这是另一个问题。通常,我会避免这样做,并通过web.config将我的服务直接注入到ASP.Net页面上,但在这种情况下,这是一种权宜之计,所以不要费心告诉我我做错了,我知道。;-)

最大值

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-12-24 06:18:58

如果你有静态方法,并且你保留了myService实例句柄,它将与Spring.NET的单例映射和你共享。只要您有引用,应用程序上下文就会一直存在。虽然这并不能完全解释内存不断增长的情况,除非您将创建的每个对象都保存在静态类中……

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1640582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档