gpt4 book ai didi

c# - IDisposable - 自动检查使用结构

转载 作者:行者123 更新时间:2023-11-30 15:07:50 25 4
gpt4 key购买 nike

有没有人知道一种自动查找任何变量的方法,其中类型实现了 IDisposable 但未使用 using 构造?

即。一种检查可能未释放的非托管资源的方法?

此外,是否可以查看正在运行的应用程序持有的资源数量和类型?

最佳答案

有一个代码分析规则:

http://msdn.microsoft.com/en-us/library/ms182289%28VS.100%29.aspx

这可以从 VS 2010 Premium 或 Ultimate 运行,也可以单独使用 FxCop 运行:

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=917023f6-d5b7-41bb-bbc0-411a7d66cf3c

我看到的另一件事是在构造 IDisposable 对象时捕获堆栈跟踪,然后如果命中最终确定(意味着 Dispose() 不是called) 使用构造的堆栈跟踪记录错误。这是昂贵的,所以你可能只想在开发中这样做,或者只在你的应用程序第二次遇到这个问题时才开始收集堆栈跟踪(如果你遇到一次,你很可能会在其中多次遇到它单个应用程序执行)。此方法适用于生命周期较长的 IDisposable 实例(不仅仅是局部变量)。当然,它也只适用于自定义 IDisposable 对象,因为它需要在构造函数/处理/终结器中使用自定义代码。

关于c# - IDisposable - 自动检查使用结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6213901/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com