【问题标题】:Pre .NET 4 memory cachePre .NET 4 内存缓存
【发布时间】:2011-09-21 19:47:01
【问题描述】:

我想使用新的 MemoryCache 类,但我还没有使用 .NET 4。我有一个简单的缓存类(内部使用字典)。像 MemoryCache 这样使用此类的好方法是什么?有谁知道在应用程序(非 asp.net)的整个生命周期中如何管理 MemoryCache?

【问题讨论】:

  • 我们谈论的是多线程应用程序吗?因为这会使事情变得更加复杂
  • 你的类在内部使用字典有什么问题?这就是我通常的做法。

标签: c# .net caching memorycache


【解决方案1】:

也许您可以为此使用 Structuremap 之类的工具?它并不是真的要做这些事情(它是一个 DI 容器),但如果您将某些项目指定为单例,某些项目基于请求等,它会很好地工作。这仅取决于您希望生命周期管理的粒度.

【讨论】:

  • 我不能不使用 DI 工具就将 Cache 类设为单例吗?
  • 您可以,但这并不能解决您的生命周期管理问题。让它成为一个单例将使你所有的对象永远存在。
  • 它将使缓存在应用程序的生命周期中持续存在,这正是我想要的。我错过了什么吗? exe 的生命周期很短 - 每次执行 1-2 分钟
  • 让它成为单例,毫无疑问。
【解决方案2】:

Enterprise Library 有一个缓存块,类似于 .Net 4 现在在核心框架上的缓存块。

它存在于第 5 版中,但我认为它已从第 6 版中删除。获取旧版本的企业库将为您提供缓存机制。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-25
    • 2011-08-24
    • 2012-10-07
    • 1970-01-01
    • 2011-11-21
    • 1970-01-01
    • 2011-03-16
    相关资源
    最近更新 更多