我有一个文件,它是从Web服务获取并在Web应用程序中本地缓存的某些数据的
XML表示形式.我们的想法是,这些数据非常静态,但可能会发生变化.所以我已将其设置为缓存到文件,并对其进行监视,以检查它是否已被删除.删除后,文件将从其源代码刷新并重建.
我现在正在遇到问题,因为很明显在多线程环境中,当它仍然在读取/写入文件时试图访问数据时它会崩溃.
这让我感到困惑,因为我添加了一个要锁定的对象,并且在读/写期间总是被锁定.据我了解,从其他线程尝试访问将被告知“等待”直到锁被释放?
只是为了让你知道,我是多线程开发的新手,所以我完全愿意接受这是我的一个搞砸:)
>我错过了什么吗?
>多线程环境中最好的文件访问策略是什么?
编辑
对不起 – 我应该说这是使用ASP.NET 2.0