我在ASP.NET MVC应用程序中引用第三方库,因为库的设计需要一个类(比如ClassA
),它必须只实例化一次,并且应该在使用后处理。因此,在我的MVC应用程序中,我定义了一个静态类并实例化了内部的ClassA
(ClassA
被大量使用)。但是,处理ClassA
的单个实例的有效方法是什么?我相信Application_End
不是正确的地方。但在什么情况或方法是正确的地方?
我应该考虑方案iisreset
,应用程序池回收以及服务器停止或重新启动的任何其他情况,并确保资源得到妥善处理。
答案 0 :(得分:0)
我的建议。首先为ClassA创建一个私有字段。将其封装到一个属性,该属性检查该字段是否为null。如果为null,则创建一个新实例。如果没有,请释放该对象并返回ClassA的新实例。这有道理吗?