c# - 使用 CaSTLe 单例会导致 ASP.NET Web 应用程序中的争用

标签 c# asp.net .net castle-windsor

我在用 ASP.NET 中的单例生活方式实例化的类中使用只读字典对象。没有锁定对字典对象的访问。

考虑到可能有许多 Web 请求同时访问它,您是否认为围绕读取此对象会有任何 .NET 争用

最佳答案

这道题其实是关于字典线程安全的,与Windsor无关。

假设您使用的是标准 .NET 集合, MSDN docs for System.Collections.Generic.Dictionary<K,V> 说:

A Dictionary(TKey, TValue) can support multiple readers concurrently, as long as the collection is not modified.

但如果您有并发编写器,它就不是线程安全的,这意味着它可能不会在内部锁定任何东西,所以我不希望有任何争用。

关于c# - 使用 CaSTLe 单例会导致 ASP.NET Web 应用程序中的争用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8153270/

相关文章:

c# - Windows 上 "secure"文件的最佳位置

c# - 对 XmlDocument 中的所有 XmlNode 进行排序

c# - 什么是虚拟方法?

c# - 使用 Web 服务 (asmx) 接受 json 请求

c# - 基类包括字段 'report' ,但其类型 (Microsoft.Reporting.WebForms.ReportViewer) 是

javascript - 在html按钮点击事件上调用jquery文件函数

c# - 如何使用 HttpClient 确定是否从缓存中完成了 HttpResponseMessage

c# - 主线程的 SynchronizationContext.Current 如何在 Windows 窗体应用程序中变为 null?

打开使用 System.IO.Compression 创建的 ZipArchive 时出现 C# .NET 缺少方法异常

c# - 为什么嵌套循环中的方法仅在第一个循环的迭代中被调用!