public class DecayingHashSet extends DecayingBloomFilter
_context, _currentDuplicates, _decayEvent, _durationMs, _entryBytes, _keepDecaying, _log, _name, _reorganizeLock| Constructor and Description |
|---|
DecayingHashSet(net.i2p.I2PAppContext context,
int durationMs,
int entryBytes)
Create a double-buffered hash set that will decay its entries over time.
|
DecayingHashSet(net.i2p.I2PAppContext context,
int durationMs,
int entryBytes,
String name) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
add(byte[] entry,
int off,
int len) |
boolean |
add(long entry) |
void |
clear() |
protected void |
decay() |
double |
getFalsePositiveRate()
pointless, only used for logging elsewhere
|
int |
getInsertedCount()
unsynchronized but only used for logging elsewhere
|
boolean |
isKnown(long entry) |
void |
stopDecaying()
super doesn't call clear, but neither do the users, so it seems like we should here
|
add, getCurrentDuplicateCount, getReadLock, getWriteLock, releaseReadLock, releaseWriteLockpublic DecayingHashSet(net.i2p.I2PAppContext context,
int durationMs,
int entryBytes)
durationMs - entries last for at least this long, but no more than twice this longentryBytes - how large are the entries to be added? 1 to 32 bytespublic DecayingHashSet(net.i2p.I2PAppContext context,
int durationMs,
int entryBytes,
String name)
name - just for logging / debugging / statspublic int getInsertedCount()
getInsertedCount in class DecayingBloomFilterpublic double getFalsePositiveRate()
getFalsePositiveRate in class DecayingBloomFilterpublic boolean add(byte[] entry,
int off,
int len)
add in class DecayingBloomFilterpublic boolean add(long entry)
add in class DecayingBloomFilterpublic boolean isKnown(long entry)
isKnown in class DecayingBloomFilterpublic void clear()
clear in class DecayingBloomFilterpublic void stopDecaying()
stopDecaying in class DecayingBloomFilterprotected void decay()
decay in class DecayingBloomFilter