关于一个POOL的代码!
在下面的代码里我想实现一种POOL功能,例如数据库接,我默认有五个连接,当超过五个后系统按实队例的先后顺序调用已经存在的实例.由于个人能力有限只能写到下面这个程度,希望高手帮忙指点一二.小弟在这里万分感受谢!!!
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
class ConnectDBPool
{
string strUserID = null;
string strPassword = null;
static int intConnectCount = 0;
//int intIndex = 0;
private static ConnectDBPool ConnectDB;
ConnectDBPool[] objDBPool = new ConnectDBPool[15];
private ConnectDBPool(string strUserID, string strPassword)
{
this.strPassword = strPassword;
this.strUserID = strUserID;
Console.WriteLine("strUserID=" + strUserID + "strPassword=" + strPassword);
}
public static ConnectDBPool GetConnectInstance(string strUserID, string strPassword)
{
if (ConnectDB == null)
{
ConnectDB = new ConnectDBPool(strUserID, strPassword);
intConnectCount++;
}
else
{
if (intConnectCount > 5)
{
///
}
else
{
ConnectDB = new ConnectDBPool(strUserID, strPassword);
intConnectCount++;
}
}
return ConnectDB;
}
}
class PoolTest
{
public static void Main()
{
ConnectDBPool t1 = ConnectDBPool.GetConnectInstance("100", "200");
ConnectDBPool t2 = ConnectDBPool.GetConnectInstance("200", "300");
ConnectDBPool t3 = ConnectDBPool.GetConnectInstance("300", "400");
ConnectDBPool t4 = ConnectDBPool.GetConnectInstance("400", "500");
ConnectDBPool t5 = ConnectDBPool.GetConnectInstance("500", "600");
ConnectDBPool t6 = ConnectDBPool.GetConnectInstance("600", "700");
ConnectDBPool t7 = ConnectDBPool.GetConnectInstance("700", "800");
ConnectDBPool t8 = ConnectDBPool.GetConnectInstance("800", "900");
ConnectDBPool t9 = ConnectDBPool.GetConnectInstance("900", "1000");
ConnectDBPool t10 = ConnectDBPool.GetConnectInstance("1000", "1100");
}
}