0

我正在将应用程序从一个框架转换为另一个框架,并且对 Application 对象有疑问。

我有一些数据(< 1MB)在应用程序启动时被读取,并且几乎从未在磁盘上更新。(例如更改之间的年数) 数据被非常频繁地访问——每次页面加载至少一次,但通常多次,并且总是只读的。

我认为在启动时将这些数据推送到 Application 对象中(在 Application_Start 中的 Global.asax 中)可能是正确的做法。我的问题是,我需要锁定对象吗?( Application.Lock/ Application.Unlock) 由于该Application_Start方法只触发一次,并且所有其他访问都在读取,所以我可以在没有锁的情况下逃脱吗?

[为什么不使用 web.config?数据相当不适合 web.config 文件,我希望数据保持原样,因为它也与其他非 ASP.NET 应用程序共享。]

4

1 回答 1

-1

锁适用于您同时读取和写入的应用程序,因此如果您打算只读,则不需要锁。

于 2013-04-15T23:26:02.330 回答