3 回答

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超10個(gè)贊
每次使用方法(a)。當(dāng)您開始擴(kuò)展應(yīng)用程序時(shí),處理狀態(tài)的邏輯將變得非常痛苦。
連接池按錫說的做。只需考慮一下在應(yīng)用程序擴(kuò)展時(shí)會(huì)發(fā)生什么,以及手動(dòng)管理連接打開/關(guān)閉狀態(tài)會(huì)有多困難。連接池在自動(dòng)處理此方面做得很好。如果您擔(dān)心性能,請考慮使用某種內(nèi)存緩存機(jī)制,以防止任何阻塞。

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
處理完連接后,請務(wù)必立即關(guān)閉它們,以便它們的基礎(chǔ)數(shù)據(jù)庫連接可以返回到池中,并可供其他調(diào)用者使用。連接池的優(yōu)化非常好,因此這樣做沒有明顯的損失。該建議與交易基本相同-完成后,請保持簡短。
如果您在使用多個(gè)連接的代碼周圍使用單個(gè)事務(wù)遇到MSDTC問題,則情況將變得更加復(fù)雜,在這種情況下,您實(shí)際上必須共享連接對(duì)象,并且僅在完成事務(wù)后才關(guān)閉它。
但是,您在這里是手工做的,因此您可能需要研究為您管理連接的工具,例如DataSet,Linq to SQL,Entity Framework或NHibernate。
- 3 回答
- 0 關(guān)注
- 609 瀏覽
添加回答
舉報(bào)