2 types derived from CacheItem
Microsoft.Extensions.Caching.Hybrid (2)
Internal\DefaultHybridCache.ImmutableCacheItem.cs (1)
10
private sealed class ImmutableCacheItem<T> :
CacheItem
<T> // used to hold types that do not require defensive copies
Internal\DefaultHybridCache.MutableCacheItem.cs (1)
8
private sealed partial class MutableCacheItem<T> :
CacheItem
<T> // used to hold types that require defensive copies
18 references to CacheItem
Microsoft.Extensions.Caching.Hybrid (18)
Internal\DefaultHybridCache.CacheItem.cs (1)
109
internal static
CacheItem
<T> Create() => ImmutableTypeCache<T>.IsImmutable ? new ImmutableCacheItem<T>() : new MutableCacheItem<T>();
Internal\DefaultHybridCache.cs (1)
123
&& untyped is
CacheItem
<T> typed && typed.TryGetValue(out var value))
Internal\DefaultHybridCache.L2.cs (1)
92
internal void SetL1<T>(string key,
CacheItem
<T> value, HybridCacheEntryOptions? options)
Internal\DefaultHybridCache.Stampede.cs (1)
60
&& untyped is
CacheItem
<T> typed && typed.TryReserve())
Internal\DefaultHybridCache.StampedeStateT.cs (14)
19
private readonly TaskCompletionSource<
CacheItem
<T>>? _result;
26
internal void SetResultDirect(
CacheItem
<T> value)
30
: base(cache, key,
CacheItem
<T>.Create(), canBeCanceled)
36
: base(cache, key,
CacheItem
<T>.Create(), token)
93
CacheItem
<T> result;
120
public Task<
CacheItem
<T>> Task
127
static Task<
CacheItem
<T>> InvalidAsync() => System.Threading.Tasks.Task.FromException<
CacheItem
<T>>(
153
static async Task<T> AwaitedAsync(Task<
CacheItem
<T>> task)
158
private static
CacheItem
<T> ThrowUnexpectedCacheItem() => throw new InvalidOperationException("Unexpected cache item");
287
CacheItem
<T> cacheItem;
315
CacheItem
<T> cacheItem;
335
CacheItem
<T> cacheItem;
358
private void SetResult(
CacheItem
<T> value)