巧用數據庫連接監(jiān)控組件解決關閉問題
一,解決方案圖
DBConnectionManage.config: 配置文件,配置兩個節(jié)點,一個是組件監(jiān)視連接的***數量一個是系統控制連接的有效時間
MConnectionWrap:這個是被監(jiān)視對象的封裝類,包括連接、過期時間、開啟連接的業(yè)務類的監(jiān)視器(GCHandle)
DBConnectionMonitor:連接監(jiān)視主類,提供添加監(jiān)視對象到一個字典里,后臺線程循環(huán)遍歷字典去處理被監(jiān)視的對象
TestConnectionMonitor:這個項目是測試示例以及如何使用連接監(jiān)視器的示例代碼
總體思路:在我們的業(yè)務類往往有開啟連接的操作,在開啟連接后同時把連接加入到監(jiān)視器里,然后監(jiān)視器會根據連接所在業(yè)務類的狀態(tài)和設置的連
接有效期來進行處理(關閉連接,移除被監(jiān)視對象)
二,效果圖
三,代碼下載
原文鏈接:http://www.cnblogs.com/oldhu/archive/2012/09/25/2701788.html
【編輯推薦】