私は、レコードを取得し、いくつかのデータ操作を実行して、それらのレコードを更新するには、(のみ、このツールを使用)、専用のSQLサーバー上で、基本的にDBをハンマー難読化ツールを開発しています。これはすべてLINQ to SQLで行われています。できるだけ多くの更新を並行して実行するために、タスクと並列ループを使用しています。すべてのSQLは、同じ接続文字列から実行されます。もともと私はそれが十分であると仮定して、デフォルトの最大接続プールサイズ(100)を使用しました。これは、(このツールは、数百万レコードを更新しているように)、それは接続を確立できないよう吐くし始め、数時間のために実行した後に思えます。接続プールの中に見た後、私は100の私の限界に達していたので、私はこれはしかし、私のプロセスのうちの1つをはるかに優れて働いている200に制限を増加していることに気づいて終わる(これはプロセスのカップルで走る言及しませんでした)約3時間後に失敗する。接続プールは過度に使用されていないと思われ、私は頭を傷つけています。私は、すべての接続が確実に廃棄されていることを確認するために、コード内の多数の領域を調べました。私はすべての接続コードを1つの中央の場所に移動したので、コードは1つの場所からの接続だけを確立します。大変疲れされている接続プールのアイデアを除外するために、私が接続しようとしたときに例外時の限界を確認するために、プールを照会するためにC#を使用したいと思います。これは可能ですか?フレームワークにこれを行うためのコードがあるか、これを判断するためにSQL stmtを実行する必要がありますか?プール内の接続をC#コードからチェックする方法はありますか?
FYI:私は事前に4.0とSQL 2008
感謝を使用しています!