gpt4 book ai didi

asp.net - 查找未关闭的SqlConnection的最快方法

转载 作者:行者123 更新时间:2023-12-02 04:00:40 24 4
gpt4 key购买 nike

我有一个ASP.NET Web应用程序,它偶尔会返回以下令人讨厌的错误:

超时时间已到。超时时间过后才获得
池中的连接。这可能是因为所有池
连接正在使用中,并且已达到最大池大小。

我的经理怀疑这是由于应用程序内的SqlConnection未封闭。因此,我目前正在手动检查应用程序中的每个代码文件,以查看是否有任何连接保持打开状态。

是否有更快的解决方案来查找此错误的根源?

最佳答案

一堆不同的选项:

  • 使用Resharper及其“使用模式搜索”(也称为“结构搜索”):http://blogs.jetbrains.com/dotnet/2010/04/introducing-resharper-50-structural-search-and-replace/
  • 为FxCop或Roslyn编写一个微型语法树遍历器以执行相同的搜索(基本上,未放置新的SqlConnection)
  • 为SqlConnection写一个包装器类(比您想象的更常见),并在其中跟踪打开/关闭的连接。
  • 将WinDbg附加到“ Activity 的”或理想情况下出错的应用程序,然后将您的堆对象移回到其根源。
  • 抓住合适的探查器(SciTech是一个简洁的探查器),它将为您提供用于对象创建的调用堆栈。
  • 关于asp.net - 查找未关闭的SqlConnection的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10655775/

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