我正在使用MVC5和Unity。关于线程安全的单例,我有点困惑。多个用户共享同一个单例对象吗?我的理解是,将为每个请求创建一个单独的对象,并且两个用户将各自拥有自己的单例。这是对的吗?
[UPDATE]
假设我有一个Singleton
类,其中包含property
个实例来获取实例。在调用Instance
时,访问该网站的两个用户是否会访问同一个单例对象?对象的范围是什么?范围是在多个用户之间共享还是每个用户都有自己的范围? Instance会为两个用户返回相同的对象吗?
答案 0 :(得分:3)
这取决于您使用的确切终身经理。如果通过" singleton"您指的是容器控制的生命周期管理器,然后该实例将由所有用户共享,并且不会在请求的生命周期内创建。
另一方面,每个http上下文生命周期管理器完全符合您的期望。
没有"单身"但就其名而言。