C# · 12月 24, 2021

c# – 用于搜索尚未处置的IDisposable对象的完整解决方案的工具

正如我们大多数人所知,为了在.net中很好地管理内存,最好总是在实现IDisposable的对象上调用Dispose().但是,当每天编写大量代码时,很容易忘记这样做.

有没有人知道搜索c#解决方案的工具并找到一次性对象尚未处理的所有地方?我可以看到,当对象喜欢将位图分配给属性但是甚至更基本的检查器具有值时,这种情况不起作用.

谢谢你的时间.

解决方法 我发现Visual Studio 2010可以完全满足我的需求.要获得该行为,请执行以下操作:

>按照How to: Create a Custom Rule Set中的说明创建新的代码分析规则集
>将以下规则添加到规则集:

>在丢失范围之前处置对象
>不要多次丢弃对象
>应处理一次性油田
> Dispose方法应该调用基类配置

或者只是将它们作为通用代码分析规则的一部分运行.它不会捕获所有东西,但它比没有安全网更好的安全网.