中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ADO.NET連接池技術的使用方法

發布時間:2021-07-24 11:43:14 來源:億速云 閱讀:124 作者:chen 欄目:開發技術

本篇內容介紹了“ADO.NET連接池技術的使用方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

連接到數據庫服務器通常需要一定的時間,且服務器也需要一定的資源來處理連接。Web應用程序有時處理成千上萬的連接,需要相當多的資源來處理連接。ADO.NET具有連接池的特性,連接池的功能是保留一定數量的連接,當用戶使用相同的連接字符串再次連接服務器時,ASO.NET將使用連接池中的連接而不用重新發起一次連接過程。當調用Close方法關閉連接時,ADO.NET將使用連接池中的連接而不用重新發起一次連接過程。當調用Close方法關閉連接時,連接將會返回到連接池中,下次再次調用Open方法時,將從連接池中取出一個連接使用。

數據庫連接字符串默認為啟用連接池。使用連接池可以在連接字符串中用pooling=true/false來控制,設置連接池最大值和最小值可以使用Max Pool Size=200;Min Pool Size=1; 進行控制。

下邊新建一個控制臺應用程序來演示連接池的使用,其實我們僅僅是在Connection String中使用pooling=false/true來控制,默認是使用連接池技術的,也就是pooling=true:

復制代碼 代碼如下:


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Threading;

namespace ConsoleApplication1
{
    class Program
    {
        private static readonly string connectionString1 = @"Data Source=.;Initial Catalog=Northwind;Integrated Security=True;pooling=true;";//默認值即為true,所以可省略pooling=true
        private static readonly string connectionString2 = @"Data Source=.;Initial Catalog=Northwind;Integrated Security=True;pooling=false;";
        static void Main(string[] args)
        {
            long startTicks1 = DateTime.Now.Ticks;
            using (SqlConnection conn1 = new SqlConnection(connectionString1))
            {
                for (int i = 0; i < 100; i++)
                {
                    conn1.Open();
                    conn1.Close();
                }
            }
            long endTicks1 = DateTime.Now.Ticks;
            long usedTicks1 = endTicks1 - startTicks1;
            Console.WriteLine("Used time: " + usedTicks1);

            long startTicks2 = DateTime.Now.Ticks;
            using (SqlConnection conn2 = new SqlConnection(connectionString2))
            {
                for (int i = 0; i < 100; i++)
                {
                    conn2.Open();
                    conn2.Close();
                }
            }
            long endTicks2 = DateTime.Now.Ticks;
            long usedTicks2 = endTicks2 - startTicks2;
            Console.WriteLine("Used time: " + usedTicks2);

        }

    }

}

輸出結果:

復制代碼 代碼如下:


pooling=true: 710040
pooling=false: 3100177

“ADO.NET連接池技術的使用方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

湟源县| 黄平县| 扎赉特旗| 安塞县| 永仁县| 浦北县| 吴旗县| 平邑县| 黄大仙区| 名山县| 呼伦贝尔市| 延吉市| 嘉定区| 高台县| 桃江县| 绥棱县| 聊城市| 定日县| 航空| 宁海县| 广德县| 大方县| 陵水| 葫芦岛市| 余庆县| 天等县| 綦江县| 蒙山县| 淅川县| 孝感市| 昌乐县| 米林县| 中方县| 察哈| 贡嘎县| 资中县| 惠来县| 鄂托克前旗| 湟中县| 桦南县| 临沧市|