Overview | Package | Class | Tree | Deprecated | Index | Help
| J avolution v5.2 (J2SE 1.5+)
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javolution.context
Class AllocatorContext

    java.lang.Object
      javolution.context.Context
          javolution.context.AllocatorContext

All Implemented Interfaces:
  java.io.Serializable, XMLSerializable

Direct Known Subclasses:
  HeapContext, ImmortalContext, StackContext

    public abstract class AllocatorContext

extends Context

This class represents an allocator context; it defines the the allocation policy of `ObjectFactory` products.

The `default` implementation is an instance of `HeapContext` context.

Specializations may allocate from local stacks (`StackContext`), specific memory areas (e.g. `ImmortalContext`), aging pools (where objects sufficiently old are recycled), switchable spaces (objects from a particular frame are recycled when buffers are swapped), etc.

Version:
  5.2, August 19, 2007
Author:
  Jean-Marie Dautelle
See Also:
  Serialized Form

Nested Class Summary
`static class` | `AllocatorContext.Reference<T>` This class represents a `reference` allocated from the current `AllocatorContext`.

Field Summary
`static Configurable<java.lang.Class<? extends AllocatorContext>>` | `DEFAULT` Holds the default implementation (`HeapContext` instance).

Fields inherited from class javolution.context.Context
`ROOT`

Constructor Summary
`protected` | `AllocatorContext()` Default constructor.

Method Summary
`protected abstract void` | `deactivate()` Deactivates the `allocators` belonging to this context for the current thread.
`protected abstract Allocator` | `getAllocator(ObjectFactory factory)` Returns the allocator for the specified factory in this context.
`static AllocatorContext` | `getCurrent()` Returns the current allocator context.
`static AllocatorContext` | `getDefault()` Returns the default instance (`DEFAULT` implementation).

Methods inherited from class javolution.context.Context
`enter, enter, enterAction, exit, exit, exitAction, getOuter, getOwner, setCurrent, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### DEFAULT

    public static final Configurable<java.lang.Class<? extends AllocatorContext>> DEFAULT

  Holds the default implementation (`HeapContext` instance).

Constructor Detail

### AllocatorContext

    protected AllocatorContext()

  Default constructor.

Method Detail

### getCurrent

    public static AllocatorContext getCurrent()

  Returns the current allocator context. If the current thread has not entered an allocator context (e.g. new thread) then `getDefault()` is returned.

  Returns:
    the current allocator context.

### getDefault

    public static AllocatorContext getDefault()

  Returns the default instance (`DEFAULT` implementation).

  Returns:
    the default instance.

### getAllocator

    protected abstract Allocator getAllocator(ObjectFactory factory)

  Returns the allocator for the specified factory in this context.

  Parameters:
    `factory` - the factory for which the allocator is returned.
  Returns:
    the allocator producing instances of the specified factory.

### deactivate

    protected abstract void deactivate()

  Deactivates the `allocators` belonging to this context for the current thread. This method is typically called when an inner allocator context is entered by the current thread, when exiting an allocator context or when a concurrent executor has completed its task within this allocator context. Deactivated allocators have no `user` (`null`).

Overview | Package | Class | Tree | Deprecated | Index | Help
| J avolution v5.2 (J2SE 1.5+)
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2005 - 2007 Javolution.