class
BoundedMemoryCache extends Cache with Logging
Instance Constructors
-
new
BoundedMemoryCache()
-
new
BoundedMemoryCache(maxBytes: Long)
Value Members
-
final
def
!=(arg0: AnyRef): Boolean
-
final
def
!=(arg0: Any): Boolean
-
final
def
##(): Int
-
final
def
==(arg0: AnyRef): Boolean
-
final
def
==(arg0: Any): Boolean
-
final
def
asInstanceOf[T0]: T0
-
def
clone(): AnyRef
-
final
def
eq(arg0: AnyRef): Boolean
-
def
equals(arg0: Any): Boolean
-
def
finalize(): Unit
-
def
get(datasetId: Any, partition: Int): Any
-
def
getCapacity: Long
-
final
def
getClass(): java.lang.Class[_]
-
def
hashCode(): Int
-
def
initLogging(): Unit
-
final
def
isInstanceOf[T0]: Boolean
-
def
log: Logger
-
def
logDebug(msg: ⇒ String, throwable: Throwable): Unit
-
def
logDebug(msg: ⇒ String): Unit
-
def
logError(msg: ⇒ String, throwable: Throwable): Unit
-
def
logError(msg: ⇒ String): Unit
-
def
logInfo(msg: ⇒ String, throwable: Throwable): Unit
-
def
logInfo(msg: ⇒ String): Unit
-
def
logWarning(msg: ⇒ String, throwable: Throwable): Unit
-
def
logWarning(msg: ⇒ String): Unit
-
final
def
ne(arg0: AnyRef): Boolean
-
def
newKeySpace(): KeySpace
-
final
def
notify(): Unit
-
final
def
notifyAll(): Unit
-
def
put(datasetId: Any, partition: Int, value: Any): CachePutResponse
-
def
reportEntryDropped(datasetId: Any, partition: Int, entry: Entry): Unit
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
-
def
toString(): String
-
final
def
wait(): Unit
-
final
def
wait(arg0: Long, arg1: Int): Unit
-
final
def
wait(arg0: Long): Unit
Inherited from AnyRef
Inherited from Any
An implementation of Cache that estimates the sizes of its entries and attempts to limit its total memory usage to a fraction of the JVM heap. Objects' sizes are estimated using SizeEstimator, which has limitations; most notably, we will overestimate total memory used if some cache entries have pointers to a shared object. Nonetheless, this Cache should work well when most of the space is used by arrays of primitives or of simple classes.