MemoryCache
この記事によると、はスレッドセーフクラスです。しかし、特定の状況でどのように動作するかはわかりません。たとえば、私は次のコードを持っています:
static private MemoryCache _cache = MemoryCache.Default;
...
if (_cache.Contains("Test"))
{
return _cache.Get("Test") as string;
}
- 呼び出した直後に要素の存続時間が期限切れになる
Contains()
ので、null
値が返されますか? Contains()
呼び出した直後に別のスレッドでアイテムを削除して、null
値が返されるようにすることはできますか?