用NHibernate时的DAO层要不要用Singleton模式?
我想问一下NHibernate对客户连接的处理是同步还是异步的?
即当多人OpenSession()时,是不是同时打开了多个连接,还是对请求进行排队,按次序进行?
然后DAO层设计成Singleton 单例模式,而且是同步的,效率上是否会好一些?
以下是我的DAO层的一个设计示例:
即当多人OpenSession()时,是不是同时打开了多个连接,还是对请求进行排队,按次序进行?
然后DAO层设计成Singleton 单例模式,而且是同步的,效率上是否会好一些?
以下是我的DAO层的一个设计示例:
public class UserDao
{
private static UserDao instance;
private static object locker = new object();
private UserDao()
{
}
public static UserDao Instance
{
get
{
lock (locker)
{
if (instance == null)
{
instance = new UserDao();
}
return instance;
}
}
}
Public Methods
}
{
private static UserDao instance;
private static object locker = new object();
private UserDao()
{
}
public static UserDao Instance
{
get
{
lock (locker)
{
if (instance == null)
{
instance = new UserDao();
}
return instance;
}
}
}
Public Methods
}