我的系统中有一个存储过程已经运行了很长时间,这在某种程度上是意料之中的,因为它处理大量数据和一个导出过程。出于争论的目的,该过程将自行运行大约 10 秒。有时我会看到这个过程使用相同的参数被背靠背调用。
呼叫 1 - 12:00:10 开始;持续时间 30 秒
呼叫 2 - 12:00:15 开始;持续时间 10 秒
似乎第一个调用正在等待第二个调用完成,然后才能完成。我阻止了进程报告的运行,并且没有从探查器那里得到任何点击;此外,当我检查 sys.dm_exec_requests 时,我没有看到 SPID 被彼此阻塞,最长的 wait_type 是 async_network_io。
存储过程同时使用#temp 和@temp 表。我被卡住了,我还应该检查或更改什么来控制它?