アプリケーションをあるフレームワークから別のフレームワークに変換していますが、Application オブジェクトについて質問があります。
アプリケーションの起動時に読み取られ、ディスク上でほとんど更新されないデータ (< 1MB) があります。(変更間隔など) データは非常に頻繁にアクセスされます。ページの読み込みごとに少なくとも 1 回ですが、通常は複数回、常に読み取り専用です。
起動時にこのデータを Application オブジェクト (Application_Start の Global.asax 内) に押し込むのは、おそらく正しいことだと思います。私の質問は、オブジェクトをロックする必要があるかどうかです。( Application.Lock
/ Application.Unlock
)Application_Start
メソッドは 1 回だけ起動し、他のすべてのアクセスは読み取りであるため、ここでロックなしで回避できますか?
【なぜweb.configを使わないの?このデータは web.config ファイルには適していません。ASP.NET 以外の他のアプリケーションとも共有されるため、データをそのままにしておいてほしいと思います。]