Webサービスから取得され、Webアプリケーション内にローカルにキャッシュされたデータのXML表現であるファイルがあります。このデータは非常に静的ですが、変更される可能性があるという考え方です。そこで、ファイルにキャッシュするように設定し、モニターを貼り付けて、削除されているかどうかを確認しました。削除されると、ファイルはソースから更新されて再構築されます。
ただし、マルチスレッド環境では、ファイルの読み取り/書き込み中にデータにアクセスしようとしているため、明らかに問題が発生しています。
これは、ロックするオブジェクトを追加したため、混乱を招きます。これは、読み取り/書き込み中は常にロックされます。他のスレッドからのアクセスの試みは、ロックが解除されるまで「待機」するように指示されるというのが私の理解でしたか?
お知らせするために、私はマルチスレッド開発に本当に慣れていないので、これが私の側の混乱であることを完全に受け入れます:)
- 私は何かが足りないのですか?
- マルチスレッド環境での最良のファイルアクセス戦略は何ですか?
編集
申し訳ありませんが、これはASP.NET2.0を使用していると言っておくべきでした:)