asp.net应用程序对象锁定

asp.net应用程序对象锁定,asp.net,locking,Asp.net,Locking,我正在将一个应用程序从一个框架转换到另一个框架,并且对应用程序对象有一个问题 我有一些数据(

我正在将一个应用程序从一个框架转换到另一个框架,并且对应用程序对象有一个问题

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

我认为在启动时(在Application_Start中的Global.asax中)将这些数据推入Application对象可能是正确的做法。我的问题是,我需要在对象周围锁定吗?(
Application.Lock
/
Application.Unlock
)由于
Application\u Start
方法只触发一次,并且每隔一次访问都在读取,因此我可以在这里不锁定就离开吗


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

锁适用于同时读写的应用程序,因此如果要只读,则不需要锁