我有一个带有存储库静态类的DAL库;它通过单例模式(静态构造函数)初始化。 有使用此 DAL 库的网站,以及同一解决方案中的 Windows 服务项目。
据了解,单例对象将有两个实例,站点和 WINservice 的每个域中都有一个实例。 是吗?
对于网站应用程序,经过一段时间的空闲后,域处于卸载状态,因此存储库类也将卸载,对吗?
关于 winservice 的最后一个问题:据了解,当服务运行时,此域永远不会被卸载,以便 repo 对象将保留在内存中?
PS:如果我创建一个子类对象,例如 winservice 的 worker 会发生什么,它将使用其中的 repo 类。
using (var worker = new worker())
{
//some DAL manipulations
}
离开工作线程上下文后,存储库对象是否会被销毁?
感谢您的任何帮助。
据了解,单例对象将有两个实例, 站点和 WINservice 的每个域中一个。是吗?
是的
对于网站应用,经过一段时间的空闲后,域处于卸载状态, 所以回购类也会被卸载,对吧?
是(可以在 IIS 中设置回收应用池的规则)
关于winservice的最后一个问题:据了解这个域名 永远不会在服务运行时卸载,以便存储库 对象将保留在内存中?
是的
离开工作线程上下文后,存储库对象是否会被销毁?
否(当然,除非您处理掉它)