AutoFac单例实例

问题描述

就线程安全而言,声明单例是否存在以下问题: builder.Register(c => new Wrapper())。As()。SingleInstance();

另外,单例类中实例变量的生存期如何? 例如:-

Class Wrapper 
{

public CosmosDbCollection graphCollection {get; private set}

 public DbManager DocDBManager { get; private set; }

public Wrapper()
{
 initialize();
}

private initialize()
{
  // get cosmos collection and store it in the graph collection object
}
}

每个请求将使用进一步的docdbmanager来查询cosmos db中的特定文档。 将Wrapper单身人士标记为好主意吗?

我还有另一个包装器类,该包装器类已初始化为公共方法,并以以下方式被调用:-

IWrapper2 wrapper2 = AppContainer.Container.Resolve<IWrapper2>();
wrapper2.initialize();

此初始化将初始化单例类的某些成员变量。可以这样做吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)