Pool (Tomcat API Documentation)
Keywords: org.apache.tomcat.jni.Pool class

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.tomcat.jni
Class Pool

    java.lang.Object
      org.apache.tomcat.jni.Pool

    public class Pool

extends java.lang.Object

Pool

Version:
  $Revision: 467222 $, $Date: 2006-10-24 05:17:11 +0200 (Tue, 24 Oct 2006) $
Author:
  Mladen Turk

Constructor Summary
`Pool()`

Method Summary
`static java.nio.ByteBuffer` | `alloc(long p, int size)` Allocate a block of memory from a pool
`static java.nio.ByteBuffer` | `calloc(long p, int size)` Allocate a block of memory from a pool and set all of the memory to 0
`static void` | `cleanupForExec()` Run all of the child_cleanups, so that any unnecessary files are closed because we are about to exec a new program
`static void` | `cleanupKill(long pool, long data)` Remove a previously registered cleanup function
`static long` | `cleanupRegister(long pool, java.lang.Object o)` Register a function to be called when a pool is cleared or destroyed
`static void` | `clear(long pool)` Clear all memory in the pool and run all the cleanups.
`static long` | `create(long parent)` Create a new pool.
`static java.lang.Object` | `dataGet(long pool, java.lang.String key)` Return the data associated with the current pool.
`static int` | `dataSet(long pool, java.lang.String key, java.lang.Object data)` Set the data associated with the current pool
`static void` | `destroy(long pool)` Destroy the pool.
`static boolean` | `isAncestor(long a, long b)` Determine if pool a is an ancestor of pool b
`static void` | `noteSubprocess(long a, long proc, int how)` Register a process to be killed when a pool dies.
`static long` | `parentGet(long pool)` Get the parent pool of the specified pool.

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

Constructor Detail

### Pool

    public Pool()

Method Detail

### create

    public static long create(long parent)

  Create a new pool.

  Parameters:
    `parent` - The parent pool. If this is 0, the new pool is a root pool. If it is non-zero, the new pool will inherit all of its parent pool's attributes, except the apr_pool_t will be a sub-pool.
  Returns:
    The pool we have just created.

### clear

    public static void clear(long pool)

  Clear all memory in the pool and run all the cleanups. This also destroys all subpools.

  Parameters:
    `pool` - The pool to clear This does not actually free the memory, it just allows the pool to re-use this memory for the next allocation.

### destroy

    public static void destroy(long pool)

  Destroy the pool. This takes similar action as apr_pool_clear() and then frees all the memory. This will actually free the memory

  Parameters:
    `pool` - The pool to destroy

### parentGet

    public static long parentGet(long pool)

  Get the parent pool of the specified pool.

  Parameters:
    `pool` - The pool for retrieving the parent pool.
  Returns:
    The parent of the given pool.

### isAncestor

    public static boolean isAncestor(long a,
                                     long b)

  Determine if pool a is an ancestor of pool b

  Parameters:
    `a` - The pool to search
    `b` - The pool to search for
  Returns:
    True if a is an ancestor of b, NULL is considered an ancestor of all pools.

### cleanupRegister

    public static long cleanupRegister(long pool,
                                       java.lang.Object o)

  Register a function to be called when a pool is cleared or destroyed

  Parameters:
    `pool` - The pool register the cleanup with
    `o` - The object to call when the pool is cleared or destroyed
  Returns:
    The cleanup handler.

### cleanupKill

    public static void cleanupKill(long pool,
                                   long data)

  Remove a previously registered cleanup function

  Parameters:
    `pool` - The pool remove the cleanup from
    `data` - The cleanup handler to remove from cleanup

### noteSubprocess

    public static void noteSubprocess(long a,
                                      long proc,
                                      int how)

  Register a process to be killed when a pool dies.

  Parameters:
    `a` - The pool to use to define the processes lifetime
    `proc` - The process to register
    `how` - How to kill the process, one of:

         APR_KILL_NEVER         -- process is never sent any signals
         APR_KILL_ALWAYS        -- process is sent SIGKILL on apr_pool_t cleanup
         APR_KILL_AFTER_TIMEOUT -- SIGTERM, wait 3 seconds, SIGKILL
         APR_JUST_WAIT          -- wait forever for the process to complete
         APR_KILL_ONLY_ONCE     -- send SIGTERM and then wait

### alloc

    public static java.nio.ByteBuffer alloc(long p,
                                            int size)

  Allocate a block of memory from a pool

  Parameters:
    `p` - The pool to allocate from
    `size` - The amount of memory to allocate
  Returns:
    The ByteBuffer with allocated memory

### calloc

    public static java.nio.ByteBuffer calloc(long p,
                                             int size)

  Allocate a block of memory from a pool and set all of the memory to 0

  Parameters:
    `p` - The pool to allocate from
    `size` - The amount of memory to allocate
  Returns:
    The ByteBuffer with allocated memory

### dataSet

    public static int dataSet(long pool,
                              java.lang.String key,
                              java.lang.Object data)

  Set the data associated with the current pool

  Parameters:
    `data` - The user data associated with the pool.
    `key` - The key to use for association
    `pool` - The current pool
    Warning : The data to be attached to the pool should have a life span at least as long as the pool it is being attached to. Object attached to the pool will be globaly referenced untill the pool is cleared or dataSet is called with the null data.
  Returns:
    APR Status code.

### dataGet

    public static java.lang.Object dataGet(long pool,
                                           java.lang.String key)

  Return the data associated with the current pool.

  Parameters:
    `key` - The key for the data to retrieve
    `pool` - The current pool.

### cleanupForExec

    public static void cleanupForExec()

  Run all of the child_cleanups, so that any unnecessary files are closed because we are about to exec a new program

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.