当前位置:  开发笔记 > 编程语言 > 正文

可以将Resharper设置为在IDisposable未正确处理时发出警告吗?

如何解决《可以将Resharper设置为在IDisposable未正确处理时发出警告吗?》经验,为你挑选了2个好方法。

Resharper 4(甚至是Visual Studio本身......)中是否有一个设置,如果我忘记将代码包装在一个using块中,或者在一个块中省略正确的Dispose调用,它会强制发出警告finally



1> Ilya Ryzhenk..:

正确的自动Dispose分析需要以全局方式进行DFA(数据流分析).您不可能创建一个IDisposable对象,也不会在其上调用任何方法,也不会将其作为参数传递.如果将一次性对象传递给其他方法(包括调用其成员,当隐式传递"this"时),该工具应分析是否未调用Dispose,或者该对象未存储在某处以供以后处理.

也就是说,检查一次性物体实际上是否使用"使用"构造或以任何其他方式进行检查的天真实施将产生过多的误报,并且使得分析无用.


好吧,我喜欢它,并且让人们与StackOverflow上的产品发布相关是很棒的.干杯!
当然,它只能在变量被限定为单个方法时发出警告,而不必检查它是否被放置在其他地方.

2> kizzx2..:

对当前方法的不满,我创建了自己的:EyeDisposable.它是一个IL指导者,因此它应该捕获许多未被静态分析捕获的泄漏.它还处于早期阶段,欢迎使用.

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有