1 write to _tokens
Microsoft.Extensions.Caching.Memory (1)
CacheEntry.cs (1)
332
return Interlocked.CompareExchange(ref
_tokens
, result, null) ?? result;
18 references to _tokens
Microsoft.Extensions.Caching.Memory (18)
CacheEntry.CacheEntryTokens.cs (2)
124
Debug.Assert(entry.
_tokens
!= null);
125
List<PostEvictionCallbackRegistration>? callbackRegistrations = Interlocked.Exchange(ref entry.
_tokens
._postEvictionCallbacks, null);
CacheEntry.cs (16)
137
[MemberNotNull(nameof(
_tokens
))]
143
[MemberNotNull(nameof(
_tokens
))]
201
_tokens
?.EnableConcurrentReads();
235
_tokens
?.PropagateTokens(parent);
246
|| (
_tokens
!= null &&
_tokens
.CheckForExpiredTokens(this));
258
_tokens
?.DetachTokens();
290
internal void AttachTokens() =>
_tokens
?.AttachTokens(this);
303
internal void InvokeEvictionCallbacks() =>
_tokens
?.InvokeEvictionCallbacks(this);
307
if ((
_tokens
== null || !
_tokens
.CanPropagateTokens()) && _absoluteExpirationTicks < 0 || _current.Value is not CacheEntry parent)
320
_tokens
?.PropagateTokens(parent);
323
[MemberNotNull(nameof(
_tokens
))]
326
if (
_tokens
!= null)
328
return
_tokens
;
335
[MemberNotNull(nameof(
_tokens
))]