Min Pool SizeMax Pool Size(預設 100)必須顯式呼叫 Close() 或 Dispose(),否則連接不會立即回池。
錯誤示範:在 Finalize 解構子中關閉連接 → 違反 GC 規範,僅釋放非受控資源。
Connection Lifetime → 回池時銷毀Close() 歸還池池內依交易上下文劃分子區:無交易區 + N 個特定交易區。關閉連接時依上下文歸入對應子區,分散式交易掛起期間仍可關閉連接。
| 參數 | 預設值 | 說明 |
|---|---|---|
| Connection Lifetime | 0 | 秒數;回池時若建立時間超過此值則銷毀。0 表示無限壽命。可用於叢集負載平衡。 |
| Connection Reset | true | 從池取出時是否重置連接狀態。SQL 7.0 設 false 可省一次往返,但不重置資料庫上下文等狀態。 |
| Enlist | true | 自動將連接登記至目前執行緒的交易上下文。 |
| Max Pool Size | 100 | 池中最大連接數。 |
| Min Pool Size | 0 | 池中維持的最小連接數。 |
| Pooling | true | 啟用/停用連接池。 |
| 計數器 | 說明 |
|---|---|
| Current # pooled and non pooled connections | 目前池連接與非池連接總數 |
| Current # pooled connections | 目前進程所有池的連接數 |
| Current # connection pools | 目前進程的池數量 |
| Peak # pooled connections | 進程啟動以來池連接峰值(需特定進程實例) |
| Total # failed connects | 開啟連接失敗總次數 |
注意: ASP.NET 應用僅能看到 _Global 實例,數值為所有應用程式總和。