# Class Buffer

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

public class Buffer extends Object
Provides utilities related to the use of directly allocated `ByteBuffer` instances with native code.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static long`
  `address(ByteBuffer buf)`
  Returns the memory address of the ByteBuffer.
  `static ByteBuffer`
  `calloc(int num, int size)`
  Deprecated.
  Unused.
  `static ByteBuffer`
  `create(long mem, int size)`
  Deprecated.
  Unused.
  `static void`
  `free(ByteBuffer buf)`
  Deprecated.
  Unused.
  `static ByteBuffer`
  `malloc(int size)`
  Deprecated.
  Unused.
  `static ByteBuffer`
  `palloc(long p, int size)`
  Deprecated.
  Unused.
  `static ByteBuffer`
  `pcalloc(long p, int size)`
  Deprecated.
  Unused.
  `static long`
  `size(ByteBuffer buf)`
  Deprecated.
  Unused.

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### malloc

    @Deprecated public static ByteBuffer malloc(int size)
    Deprecated.
    Unused. Will be removed in Tomcat 10.1
    Allocate a new ByteBuffer from memory
    Parameters:
      `size` - The amount of memory to allocate
    Returns:
      The ByteBuffer with allocated memory

  - ### calloc

    @Deprecated public static ByteBuffer calloc(int num, int size)
    Deprecated.
    Unused. Will be removed in Tomcat 10.1
    Allocate a new ByteBuffer from memory and set all of the memory to 0
    Parameters:
      `num` - Number of elements.
      `size` - Length in bytes of each element.
    Returns:
      The ByteBuffer with allocated memory

  - ### palloc

    @Deprecated public static ByteBuffer palloc(long p, int size)
    Deprecated.
    Unused. Will be removed in Tomcat 10.1
    Allocate a new ByteBuffer from a pool
    Parameters:
      `p` - The pool to allocate from
      `size` - The amount of memory to allocate
    Returns:
      The ByteBuffer with allocated memory

  - ### pcalloc

    @Deprecated public static ByteBuffer pcalloc(long p, int size)
    Deprecated.
    Unused. Will be removed in Tomcat 10.1
    Allocate a new ByteBuffer 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

  - ### create

    @Deprecated public static ByteBuffer create(long mem, int size)
    Deprecated.
    Unused. Will be removed in Tomcat 10.1
    Allocate a new ByteBuffer from already allocated memory.
    Allocated memory must be provided from call to the Stdlib.alloc or Stdlib.calloc methods.
    Parameters:
      `mem` - The memory to use
      `size` - The amount of memory to use
    Returns:
      The ByteBuffer with attached memory

  - ### free

    @Deprecated public static void free(ByteBuffer buf)
    Deprecated.
    Unused. Will be removed in Tomcat 10.1
    Deallocates or frees a memory block used by ByteBuffer
    Warning : Call this method only on ByteBuffers that were created by calling Buffer.alloc or Buffer.calloc.
    Parameters:
      `buf` - Previously allocated ByteBuffer to be freed.

  - ### address

    public static long address(ByteBuffer buf)
    Returns the memory address of the ByteBuffer.
    Parameters:
      `buf` - Previously allocated ByteBuffer.
    Returns:
      the memory address

  - ### size

    @Deprecated public static long size(ByteBuffer buf)
    Deprecated.
    Unused. Will be removed in Tomcat 10.1
    Returns the allocated memory size of the ByteBuffer.
    Parameters:
      `buf` - Previously allocated ByteBuffer.
    Returns:
      the size