1 write to _stringsByHashCode
Microsoft.NET.StringTools (1)
WeakStringCache.Concurrent.cs (1)
21_stringsByHashCode = new ConcurrentDictionary<int, StringWeakHandle>(Environment.ProcessorCount, _initialCapacity);
10 references to _stringsByHashCode
Microsoft.NET.StringTools (10)
WeakStringCache.Concurrent.cs (7)
41if (_stringsByHashCode.TryGetValue(hashCode, out handle)) 66if (_stringsByHashCode.TryAdd(hashCode, handle)) 88_scavengeThreshold = _stringsByHashCode.Count * 2; 94_count = _stringsByHashCode.Count; 109foreach (KeyValuePair<int, StringWeakHandle> entry in _stringsByHashCode) 112if (!entry.Value.IsUsed && _stringsByHashCode.TryRemove(entry.Key, out StringWeakHandle? removedHandle)) 118if (!removedHandle.IsUsed || !_stringsByHashCode.TryAdd(entry.Key, removedHandle))
WeakStringCache.cs (3)
101foreach (KeyValuePair<int, StringWeakHandle> entry in _stringsByHashCode) 105_stringsByHashCode.Clear(); 126foreach (KeyValuePair<int, StringWeakHandle> entry in _stringsByHashCode)