public IntObjectCache(int cacheSize) { if (cacheSize < minSize) { cacheSize = minSize; } else if (cacheSize > maxSize) { cacheSize = maxSize; } _top = _back = 0; _cache = new CacheEntry[cacheSize + 1]; _hashTableSize = HashtableParams.AdjustHashtableSize((uint)cacheSize); _hashTable = new ushort[_hashTableSize]; _Attempts = 0; _Hits = 0; _count = _firstFree = 0; _eventArgs = new IntObjectCacheEventArgs(); }
private void _nodesCache_ObjectRemoved(object sender, IntObjectCacheEventArgs e) { _freeNode = (TrieNode)e.Object; }