Skip to content

Commit

Permalink
Clean-up CacheEntry (#59110)
Browse files Browse the repository at this point in the history
  • Loading branch information
pentp authored Apr 27, 2022
1 parent 276d642 commit fa55bec
Show file tree
Hide file tree
Showing 9 changed files with 236 additions and 268 deletions.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,14 @@ private sealed class CacheEntryTokens

internal void AttachTokens(CacheEntry cacheEntry)
{
if (_expirationTokens != null)
List<IChangeToken>? expirationTokens = _expirationTokens;
if (expirationTokens is not null)
{
lock (this)
{
for (int i = 0; i < _expirationTokens.Count; i++)
for (int i = 0; i < expirationTokens.Count; i++)
{
IChangeToken expirationToken = _expirationTokens[i];
IChangeToken expirationToken = expirationTokens[i];
if (expirationToken.ActiveChangeCallbacks)
{
_expirationTokenRegistrations ??= new List<IDisposable>(1);
Expand All @@ -46,11 +47,12 @@ internal void AttachTokens(CacheEntry cacheEntry)

internal bool CheckForExpiredTokens(CacheEntry cacheEntry)
{
if (_expirationTokens != null)
List<IChangeToken>? expirationTokens = _expirationTokens;
if (expirationTokens is not null)
{
for (int i = 0; i < _expirationTokens.Count; i++)
for (int i = 0; i < expirationTokens.Count; i++)
{
IChangeToken expiredToken = _expirationTokens[i];
IChangeToken expiredToken = expirationTokens[i];
if (expiredToken.HasChanged)
{
cacheEntry.SetExpired(EvictionReason.TokenExpired);
Expand All @@ -69,12 +71,10 @@ internal void PropagateTokens(CacheEntry parentEntry)
{
lock (this)
{
lock (parentEntry.GetOrCreateTokens())
CacheEntryTokens parentTokens = parentEntry.GetOrCreateTokens();
lock (parentTokens)
{
foreach (IChangeToken expirationToken in _expirationTokens)
{
parentEntry.AddExpirationToken(expirationToken);
}
parentTokens.ExpirationTokens.AddRange(_expirationTokens);
}
}
}
Expand Down
Loading

0 comments on commit fa55bec

Please sign in to comment.