Package com.tangosol.io.nio
Class DirectBufferManager
- java.lang.Object
-
- com.tangosol.util.Base
-
- com.tangosol.io.nio.AbstractBufferManager
-
- com.tangosol.io.nio.DirectBufferManager
-
- All Implemented Interfaces:
ByteBufferManager
@Deprecated public class DirectBufferManager extends AbstractBufferManager
Deprecated.useJournalBinaryStoreinsteadManages a growable direct ByteBuffer.- Since:
- Coherence 2.2
- Author:
- cp 2002.09.16
- See Also:
ByteBuffer
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.tangosol.util.Base
Base.LoggingWriter
-
-
Field Summary
Fields Modifier and Type Field Description static intCLEANUP_FINALIZERSDeprecated.Use Runtime.runFinalization() to trigger finalization (default).static intCLEANUP_GCDeprecated.Use Runtime.gc() to trigger finalization.static intCLEANUP_NONEDeprecated.Do not perform any buffer cleanup.protected static booleanMODE_DEBUGDeprecated.Set to true to use on-heap storage, false to use off-heap.protected static longs_cbUncollectedDeprecated.Total amount of memory that have not been collected yet.
-
Constructor Summary
Constructors Constructor Description DirectBufferManager(int cbInitial, int cbMaximum)Deprecated.Construct a DirectBufferManager that supports a buffer of a certain initial and maximum size.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected voidallocateBuffer()Deprecated.Allocate a new buffer, copying old data if there is any.protected voidcleanupBuffers()Deprecated.Determines if and how to induce the JVM to run finalizers.static intgetAllocations()Deprecated.Return the total number of buffers allocated by the DirectBufferManager.static intgetCleanupMethod()Deprecated.Return the method used for buffers cleanup when the threshold is met.static floatgetCleanupThreshold()Deprecated.Return the value used to calculate the size threshold for the uncollected buffers that triggers a cleanup operation.static longgetTotalAllocationTime()Deprecated.Return the total time spent allocating buffers, copying the previous content and cleaning up uncollected buffers.protected static voidsetCleanupMethod(int nCleanupMethod)Deprecated.Set the method to be used for buffers cleanup when the threshold is met.protected static voidsetCleanupThreshold(float flCleanupThreshold)Deprecated.Determines how often, to run thecleanupBuffers()method.-
Methods inherited from class com.tangosol.io.nio.AbstractBufferManager
calibrate, getBuffer, getCapacity, getGrowthThreshold, getMaxCapacity, getMaxIncrement, getMinCapacity, getShrinkageThreshold, grow, setBuffer, setCapacity, setGrowthThreshold, setMaxCapacity, setMinCapacity, setShrinkageThreshold, shrink
-
Methods inherited from class com.tangosol.util.Base
azzert, azzert, azzert, azzertFailed, breakLines, breakLines, capitalize, checkNotEmpty, checkNotNull, checkRange, computeSafeWaitTime, decimalValue, dup, dup, ensureBigDecimal, ensureClassLoader, ensureRuntimeException, ensureRuntimeException, equals, equalsDeep, err, err, err, err, err, escape, formatDateTime, getCallerStackFrame, getCommonMonitor, getCommonMonitor, getCommonMonitor, getContextClassLoader, getContextClassLoader, getDeepMessage, getErr, getLastSafeTimeMillis, getLog, getMaxDecDigits, getMaxHexDigits, getOriginalException, getOut, getProcessRandom, getRandom, getRandomBinary, getRandomBinary, getRandomString, getSafeTimeMillis, getStackFrame, getStackFrames, getStackTrace, getStackTrace, getStackTrace, getThreadFactory, getTimeZone, getUpTimeMillis, hashCode, hexValue, indentString, indentString, isDecimal, isHex, isLogEcho, isOctal, log, log, log, log, log, makeInteger, makeLong, makeThread, mergeArray, mergeBooleanArray, mergeByteArray, mergeCharArray, mergeDoubleArray, mergeFloatArray, mergeIntArray, mergeLongArray, mod, mod, octalValue, out, out, out, out, out, pad, parseBandwidth, parseBandwidth, parseDelimitedString, parseHex, parseHex, parseMemorySize, parseMemorySize, parsePercentage, parseTime, parseTime, parseTimeNanos, parseTimeNanos, printStackTrace, randomize, randomize, randomize, randomize, read, read, read, read, read, read, read, replace, setErr, setLog, setLogEcho, setOut, sleep, toBandwidthString, toBandwidthString, toCharEscape, toCrc, toCrc, toCrc, toCrc, toCrc, toDecString, toDelimitedString, toDelimitedString, toDelimitedString, toDelimitedString, toHex, toHex, toHexDump, toHexEscape, toHexEscape, toHexEscape, toHexEscape, toHexString, toMemorySizeString, toMemorySizeString, toQuotedCharEscape, toQuotedStringEscape, toSqlString, toString, toString, toStringEscape, toUnicodeEscape, trace, trace, trace, trace, trace, trace, trace, trace, trace, truncateString, truncateString, wait
-
-
-
-
Field Detail
-
CLEANUP_NONE
public static final int CLEANUP_NONE
Deprecated.Do not perform any buffer cleanup.- See Also:
- Constant Field Values
-
CLEANUP_FINALIZERS
public static final int CLEANUP_FINALIZERS
Deprecated.Use Runtime.runFinalization() to trigger finalization (default).- See Also:
- Constant Field Values
-
CLEANUP_GC
public static final int CLEANUP_GC
Deprecated.Use Runtime.gc() to trigger finalization.- See Also:
- Constant Field Values
-
MODE_DEBUG
protected static final boolean MODE_DEBUG
Deprecated.Set to true to use on-heap storage, false to use off-heap.- See Also:
- Constant Field Values
-
s_cbUncollected
protected static volatile long s_cbUncollected
Deprecated.Total amount of memory that have not been collected yet.
-
-
Method Detail
-
allocateBuffer
protected void allocateBuffer()
Deprecated.Allocate a new buffer, copying old data if there is any.- Specified by:
allocateBufferin classAbstractBufferManager- See Also:
ByteBuffer.allocateDirect()
-
cleanupBuffers
protected void cleanupBuffers()
Deprecated.Determines if and how to induce the JVM to run finalizers. This allows to somewhat mitigate a known JDK bug.When the amount of uncollected garbage reaches the threshold indicated by
the cleanup thresholdfrequency, induce the GC. In a 64-bit VMs this issue is probably reduced to a minimum.
-
getTotalAllocationTime
public static long getTotalAllocationTime()
Deprecated.Return the total time spent allocating buffers, copying the previous content and cleaning up uncollected buffers.- Returns:
- the number of milliseconds spent in allocating, copying and cleaning up uncollected buffers
-
getAllocations
public static int getAllocations()
Deprecated.Return the total number of buffers allocated by the DirectBufferManager.- Returns:
- the total number of allocations
-
getCleanupMethod
public static int getCleanupMethod()
Deprecated.Return the method used for buffers cleanup when the threshold is met.The possible return values are:
- CLEANUP_FINALIZERS - use Runtime.runFinalization() (default);
- CLEANUP_GC - use Runtime.gc();
- CLEANUP_NONE - do not perform any cleanup.
- Returns:
- one of the CLEANUP_* constants representing the cleanup method
-
setCleanupMethod
protected static void setCleanupMethod(int nCleanupMethod)
Deprecated.Set the method to be used for buffers cleanup when the threshold is met.- Parameters:
nCleanupMethod- a value representing the cleanup method; valid values are the CLEANUP_* constants- Throws:
IllegalArgumentException- if passed value is not a valid CLEANUP_* constant
-
getCleanupThreshold
public static float getCleanupThreshold()
Deprecated.Return the value used to calculate the size threshold for the uncollected buffers that triggers a cleanup operation. Cleanup is performed when the total size of uncollected memory has grown over the product of this value and the maximum Java heap size.- Returns:
- a value between 0.0 and 1.0 used to calculate the cleanup frequency
-
setCleanupThreshold
protected static void setCleanupThreshold(float flCleanupThreshold)
Deprecated.Determines how often, to run thecleanupBuffers()method. Cleanup is performed when the uncollected memory has grown over the product of this value and the maximum Java heap size.- Parameters:
flCleanupThreshold- a value between 0.0 and 1.0 used to calculate the cleanup frequency- Throws:
IllegalArgumentException- if the passed value is not valid
-
-