0

私は非常に長い間この問題を抱えていましたが、まもなくリリースされ、修正する必要があります。

アプリケーションがあり、そのアプリケーションで別のアプリケーションを呼び出すことができます (同じアプリケーションでも、パラメーターが異なる場合があります)。

私たちが行った選択は、被呼者が起動するまで発信者を無効にすることです。

呼び出しを閉じると、リソースを解放する時間が約 1500 ミリ秒続く場合がありますが、毎回ではありません。

DotTrace を使用して何が起こるかを確認しました。スタックは次のとおりです。

スタックが遅い

ご覧のとおり、ファイナライズ メソッドは 1500 ミリ秒続きますが、その理由はわかりません !!

一部のプログラムでは、数ミリ秒しかかかりません。

だから、誰かがアイデアを持っているなら、....

Thx、そしてメリークリスマス!

4

1 に答える 1

0

見つけた!

理由はわかりませんが、GC.Collect ()とを追加することで問題を解決しましたSqlConnection.ClearPool (_Connection);

于 2012-01-05T17:45:17.133 に答える