Package org.terrier.utility
Class RuntimeMemoryChecker
- java.lang.Object
-
- org.terrier.utility.RuntimeMemoryChecker
-
- All Implemented Interfaces:
MemoryChecker
public class RuntimeMemoryChecker extends java.lang.Object implements MemoryChecker
A memory checker that uses the Java Runtime instance to check the amount of available memory. A given amount of memory must be kept free, however, this condition is only signalled if a given percentage of the JVM's potential memory usage has been exhausted.
-
-
Constructor Summary
Constructors Constructor Description RuntimeMemoryChecker()
Default constructor.RuntimeMemoryChecker(long _reserved, double _threshold)
Construct a RuntimeMemoryChecker.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
checkMemory()
Returns true if memory is running low.void
reset()
Reset the out of memory flagjava.lang.String
toString()
-
-
-
Constructor Detail
-
RuntimeMemoryChecker
public RuntimeMemoryChecker()
Default constructor. Uses ApplicationSetup.MEMORY_THRESHOLD_SINGLEPASS and memory.heap.usage for the default memory threshold amount (default 0.70).
-
RuntimeMemoryChecker
public RuntimeMemoryChecker(long _reserved, double _threshold)
Construct a RuntimeMemoryChecker.- Parameters:
_reserved
- The amount of memory that must be kept available._threshold
- Percentage of possible memory that must be allocated before a lowMemory condition is allowed.
-
-
Method Detail
-
checkMemory
public boolean checkMemory()
Returns true if memory is running low. If this returns true, it will continue to do so until reset() is called, which the client code should do once memory has been freed.- Specified by:
checkMemory
in interfaceMemoryChecker
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
reset
public void reset()
Reset the out of memory flag- Specified by:
reset
in interfaceMemoryChecker
-
-