c# - C# 在使用时删除缓存
问题描述
想象一下,我在缓存中有 100 个自定义对象,每个对象都是一家公司,并且有一个关联的数字。
公司1:763,公司2:603,公司3:829...
我用这些数字计算一个平均数,并缓存平均值。
当用户浏览网站时,所有数字和平均值都在 ASP.net 缓存中。
现在在后台我有一个不时将这些数字更新到数据库的过程。
然后我遍历缓存并删除所有公司对象以及平均缓存,如下所示:
foreach (System.Collections.DictionaryEntry entry in HttpRuntime.Cache)
{
HttpRuntime.Cache.Remove((string)entry.Key);
}
问题是:我如何确定在从缓存中删除所有这些项目的过程中,前端网站中的平均值没有被错误计算?(请记住,我还将平均值保存在缓存中)
例如,假设在删除公司 53 的缓存时再次加载网站(其余最多 100 个待删除)。因此,有一次,平均值可能会被新旧数字计算错误。
谢谢!
解决方案
推荐阅读
- makefile - Makefile 缺少分隔符。停止。eval 和变量的错误
- ansible - Ansible http get 请求不起作用,但手动 curl get 有效
- slack-api - 更新 Bot 发布的消息时出现“cant_update_message”错误
- reactjs - 如何正确合并和部署反应构建文件?
- javascript - 如何将侧边菜单内容包含到自定义汉堡图标中?
- r - 加载 dplyr 时找不到函数“%<>%”
- acumatica - Acumatica SOLine 更新折扣金额字段的问题
- java - Netty ByteBuf 到 byte[] 解码器
- java - 为什么在这种情况下需要 catch IOException
- c++98 - 如何使用 std::copy 将给定的向量范围正确复制到另一个向量?