創(chuàng)建ADO連接池FAQ相關(guān)發(fā)生事宜
經(jīng)過長時(shí)間學(xué)習(xí)ADO連接池FAQ,于是和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。學(xué)習(xí)ADO連接池FAQ時(shí),你可能會遇到ADO連接池FAQ問題,這里將介紹ADO連接池FAQ問題的解決方法,在這里拿出來和大家分享一下。
1. 何時(shí)創(chuàng)建ADO連接池FAQ?
當(dāng)?shù)谝粋€(gè)連接請求到來時(shí)創(chuàng)建連接池;連接池的建立由數(shù)據(jù)庫連接的連接字符創(chuàng)來決定。每一個(gè)連接池都與一個(gè)不同的連接字符串相關(guān)。當(dāng)一個(gè)新的連接請求到來時(shí)如果連接字符串和連接池使用的字符串相同,就從連接池取出一個(gè)連接;如果不相同,就新建一個(gè)連接池。
2. 何時(shí)關(guān)閉ADO連接池FAQ?
當(dāng)連接池中的所有連接都已經(jīng)關(guān)閉時(shí)關(guān)閉連接池。
3. 當(dāng)連接池中的連接都已經(jīng)用完,而有新的連接請求到來時(shí)會發(fā)生什么?
當(dāng)連接池已經(jīng)達(dá)到它的最大連接數(shù)目時(shí),有新的連接請求到來時(shí),新的連接請求將放置到連接隊(duì)列中。當(dāng)有連接釋放給連接池時(shí),連接池將新釋放的連接分配給在隊(duì)列中排隊(duì)的連接請求。你可以調(diào)用close和dispose將連接歸還給連接池。
4. 我應(yīng)該如何允許ADO連接池FAQ?
對于.NET應(yīng)用程序而言,默認(rèn)為允許連接池。(這意味著你可以不必為這件事情做任何的事情)當(dāng)然,如果你可以在SQLConnection對象的連接字符串中加進(jìn)Pooling=true;確保你的應(yīng)用程序允許連接池的使用。#t#
5. 我應(yīng)該如何禁止連接池?
ADO.NET默認(rèn)為允許數(shù)據(jù)庫ADO連接池FAQ,如果你希望禁止連接池,可以使用如下的方式:
1) 使用SQLConnection對象時(shí),ADO連接池FAQ字符串加入如下內(nèi)容:Pooling=False;
2) 使用OLEDBConnection對象時(shí),往連接字符串加入如下內(nèi)容:OLE DB Services=-4;
通過上面的兩篇文章希望大家可以明白什么是數(shù)據(jù)庫ADO連接池FAQ,什么時(shí)候適用,什么時(shí)候不適用。關(guān)于性能測試,我做了一個(gè)小例子,大家可以看看:
第一次運(yùn)行:
多次運(yùn)行后: