|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.glassfish.grizzly.memory.AbstractMemoryManager<E>
public abstract class AbstractMemoryManager<E extends Buffer>
A MemoryManager
abstraction to provide utilities that may be useful
across different MemoryManager
implementations.
Nested Class Summary | |
---|---|
protected static interface |
AbstractMemoryManager.TrimAware
This is a marker interface indicating a particular Buffer
implementation can be trimmed. |
Field Summary | |
---|---|
static int |
DEFAULT_MAX_BUFFER_SIZE
The maximum size of the memory pool that is to be maintained by either the MemoryManager itself or any ThreadLocalPool s. |
protected int |
maxBufferSize
|
protected AbstractJmxMonitoringConfig<MemoryProbe> |
monitoringConfig
Basic monitoring support. |
Fields inherited from interface org.glassfish.grizzly.memory.MemoryManager |
---|
DEFAULT_MEMORY_MANAGER |
Constructor Summary | |
---|---|
AbstractMemoryManager()
Creates a new AbstractMemoryManager using a max buffer size
of 65536. |
|
AbstractMemoryManager(int maxBufferSize)
Creates a new AbstractMemoryManager using the specified
buffer size. |
Method Summary | |
---|---|
protected Object |
allocateFromPool(ThreadLocalPool threadLocalCache,
int size)
Allocate a Buffer using the provided ThreadLocalPool . |
protected abstract JmxObject |
createJmxManagementObject()
|
int |
getMaxBufferSize()
|
int |
getReadyThreadBufferSize()
Get the size of local thread memory pool. |
protected static ThreadLocalPool |
getThreadLocalPool()
Get thread associated buffer pool. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.glassfish.grizzly.memory.MemoryManager |
---|
allocate, allocateAtLeast, reallocate, release, willAllocateDirect |
Methods inherited from interface org.glassfish.grizzly.monitoring.jmx.JmxMonitoringAware |
---|
getMonitoringConfig |
Methods inherited from interface org.glassfish.grizzly.memory.ThreadLocalPoolProvider |
---|
createThreadLocalPool |
Field Detail |
---|
public static final int DEFAULT_MAX_BUFFER_SIZE
ThreadLocalPool
s.
protected final AbstractJmxMonitoringConfig<MemoryProbe> monitoringConfig
createJmxManagementObject()
method
to plug into the Grizzly 2.0 JMX framework.
protected final int maxBufferSize
Constructor Detail |
---|
public AbstractMemoryManager()
AbstractMemoryManager
using a max buffer size
of 65536.
public AbstractMemoryManager(int maxBufferSize)
AbstractMemoryManager
using the specified
buffer size.
maxBufferSize
- max size of the maintained buffer.Method Detail |
---|
public int getReadyThreadBufferSize()
public int getMaxBufferSize()
AbstractMemoryManager
.protected Object allocateFromPool(ThreadLocalPool threadLocalCache, int size)
Buffer
using the provided ThreadLocalPool
.
threadLocalCache
- the ThreadLocalPool
to allocate from.size
- the amount to allocate.
null
if the requested size
exceeds the remaining free memory of the ThreadLocalPool
.protected abstract JmxObject createJmxManagementObject()
JmxObject
used to register/deregister with the
JMX runtime.protected static ThreadLocalPool getThreadLocalPool()
null
if the current thread doesn't have a buffer pool
associated with it.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |