2

私の C# コードはSqlConnection、SQL Azure への接続に使用します。時々私は次のことに直面します:

System.InvalidOperationException
Timeout expired.  The timeout period elapsed prior to obtaining a connection
from the pool.  This may have occurred because all pooled connections were
in use and max pool size was reached.
 at System.Data.ProviderBase.DbConnectionFactory.GetConnection(
    DbConnection owningConnection)
 at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(
    DbConnection outerConnection, DbConnectionFactory connectionFactory)
at System.Data.SqlClient.SqlConnection.Open()
// my code calling SqlConnection.Open()

この例外に直面している理由を見つけたいと思います。接続プールを使い果たしたために例外が発生した可能性がありますが、完全にはわかりません。確信がある場合は、どうやってそこにたどり着いたのか知​​りたいです。

コードで最大プール サイズと現在のプール使用率 (使用済みおよび未使用の接続数) を取得することはできますか?

4

2 に答える 2

0

このリンクをチェックアウトできます。

指定されていない場合、最大プール サイズは 100 です。

于 2013-05-06T11:38:53.017 に答える