2011-04-19 20 views
1

在实现多线程缓存时,我在MSDN上找到了这篇文章。这是.NET中多线程缓存的好实现吗?

http://msdn.microsoft.com/en-us/library/system.threading.readerwriterlockslim.aspx

这是Windows appliation使用框架4.0。我主要关心的是线程安全。目前我正在使用MemoryCache,我知道它不是线程安全的。那么提供的实现是实现多线程缓存的更好方法吗?

请指教。

+0

你忘了发布自己的代码?或者关于ReaderWriterLockSlim的问题,它只是简单地提供了一种实现同步的方法,对于mutlithreaded缓存来说,_would_方便使用。 – pickypg 2011-04-19 18:40:40

+0

你应该在这里发布一些代码,如果你期望答案 – Stefan 2011-04-19 18:41:37

回答

2

我不太清楚ReaderWriterLockSlim和缓存之间的关系。该类用于同步对多线程应用程序中共享资源的访问。为了实现数据缓存,我建议你看看System.Runtime.Caching命名空间。

+0

没有关系,但我只是喜欢该类的实现。它看起来非常安全。 – Asdfg 2011-04-19 18:47:54

+0

@Asdfg,正如我在我的回答中所说的,这个类用于同步从多个线程访问共享资源。 – 2011-04-19 18:49:11

0

目前我正在使用MemoryCache,我知道它不是线程安全的。

MemoryCache是​​线程安全的 - 请参阅the MSDN documentation中的线程安全部分。

当然,您放入MemoryCache的项目可能不是线程安全的,这是另一回事。在很多情况下,MemoryCache用于存储不可变的元素,这将是线程安全的。