7 instantiations of BufferChunk
Microsoft.Extensions.Caching.Hybrid (7)
Internal\DefaultHybridCache.L2.cs (5)
55
?
new
(writer.DetachCommitted(out int length), 0, length, returnToPool: true)
72
?
new
(writer.DetachCommitted(out int length), 0, length, returnToPool: true)
114
ValueTask pending = SetDirectL2Async(TagKeyPrefix + tag, new
BufferChunk
(oversized, 0, sizeof(long), false), _tagInvalidationEntryOptions, token);
230
await SetDirectL2Async(key,
new
(oversized, 0, length, true), GetL2DistributedCacheOptions(options), token).ConfigureAwait(false);
244
return
new
(payload);
Internal\DefaultHybridCache.Serialization.cs (1)
68
buffer =
new
(writer.DetachCommitted(out int length), 0, length, returnToPool: true); // remove buffer ownership from the writer
Internal\DefaultHybridCache.StampedeStateT.cs (1)
236
result =
new
(payload.Array!, payload.Offset, payload.Count, result.ReturnToPool);
23 references to BufferChunk
Microsoft.Extensions.Caching.Hybrid (23)
Internal\BufferChunk.cs (2)
94
internal
BufferChunk
DoNotReturnToPool()
96
BufferChunk
copy = this;
Internal\DefaultHybridCache.CacheItem.cs (1)
56
public abstract bool TryReserveBuffer(out
BufferChunk
buffer);
Internal\DefaultHybridCache.ImmutableCacheItem.cs (1)
59
public override bool TryReserveBuffer(out
BufferChunk
buffer)
Internal\DefaultHybridCache.L2.cs (10)
25
internal ValueTask<
BufferChunk
> GetFromL2DirectAsync(string key, CancellationToken token)
54
BufferChunk
result = pendingBuffers.GetAwaiter().GetResult()
63
static async Task<
BufferChunk
> AwaitedLegacyAsync(Task<byte[]?> pending, DefaultHybridCache @this)
69
static async Task<
BufferChunk
> AwaitedBuffersAsync(ValueTask<bool> pending, RecyclableArrayBufferWriter<byte> writer)
71
BufferChunk
result = await pending.ConfigureAwait(false)
79
internal ValueTask SetL2Async(string key, CacheItem cacheItem, in
BufferChunk
buffer, HybridCacheEntryOptions? options, CancellationToken token)
82
internal ValueTask SetDirectL2Async(string key, in
BufferChunk
buffer, DistributedCacheEntryOptions options, CancellationToken token)
144
BufferChunk
buffer = await GetFromL2DirectAsync(TagKeyPrefix + tag, cts.Token).ConfigureAwait(false);
221
private async ValueTask WritePayloadAsync(string key, CacheItem cacheItem,
BufferChunk
payload, HybridCacheEntryOptions? options, CancellationToken token)
235
private
BufferChunk
GetValidPayloadSegment(byte[]? payload)
Internal\DefaultHybridCache.MutableCacheItem.cs (3)
14
private
BufferChunk
_buffer;
26
public void SetValue(ref
BufferChunk
buffer, IHybridCacheSerializer<T> serializer)
78
public override bool TryReserveBuffer(out
BufferChunk
buffer)
Internal\DefaultHybridCache.Serialization.cs (1)
54
private bool TrySerialize<T>(T value, out
BufferChunk
buffer, out IHybridCacheSerializer<T>? serializer)
Internal\DefaultHybridCache.StampedeStateT.cs (5)
182
BufferChunk
result;
341
BufferChunk
bufferToRelease = default;
342
if (Cache.TrySerialize(newValue, out
BufferChunk
buffer, out IHybridCacheSerializer<T>? serializer))
438
private void SetResultAndRecycleIfAppropriate(ref
BufferChunk
value, TimeSpan remainingTime)
488
private void SetResultPreSerialized(T value, ref
BufferChunk
buffer, IHybridCacheSerializer<T>? serializer)