## com.fasterxml.jackson.core.util
Class BufferRecycler

    java.lang.Object
      com.fasterxml.jackson.core.util.BufferRecycler

    public class BufferRecycler

extends Object

This is a small utility class, whose main functionality is to allow simple reuse of raw byte/char buffers. It is usually used through `ThreadLocal` member of the owning class pointing to instance of this class through a `SoftReference`. The end result is a low-overhead GC-cleanable recycling: hopefully ideal for use by stream readers.

Nested Class Summary
`static class` `BufferRecycler.ByteBufferType`
`static class` `BufferRecycler.CharBufferType`

Field Summary
`protected byte[][]` `_byteBuffers`
`protected char[][]` `_charBuffers`
`static int` `DEFAULT_WRITE_CONCAT_BUFFER_LEN`

Constructor Summary
`BufferRecycler()`

Method Summary
`byte[]` `allocByteBuffer(BufferRecycler.ByteBufferType type)`
`char[]` `allocCharBuffer(BufferRecycler.CharBufferType type)`
`char[]` `allocCharBuffer(BufferRecycler.CharBufferType type, int minSize)`
`void` `releaseByteBuffer(BufferRecycler.ByteBufferType type, byte[] buffer)`
`void` `releaseCharBuffer(BufferRecycler.CharBufferType type, char[] buffer)`

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

Field Detail

### DEFAULT_WRITE_CONCAT_BUFFER_LEN

    public static final int DEFAULT_WRITE_CONCAT_BUFFER_LEN

See Also:
  Constant Field Values

### _byteBuffers

    protected final byte[][] _byteBuffers

### _charBuffers

    protected final char[][] _charBuffers

Constructor Detail

### BufferRecycler

    public BufferRecycler()

Method Detail

### allocByteBuffer

    public final byte[] allocByteBuffer(BufferRecycler.ByteBufferType type)

### releaseByteBuffer

    public final void releaseByteBuffer(BufferRecycler.ByteBufferType type,
                                        byte[] buffer)

### allocCharBuffer

    public final char[] allocCharBuffer(BufferRecycler.CharBufferType type)

### allocCharBuffer

    public final char[] allocCharBuffer(BufferRecycler.CharBufferType type,
                                        int minSize)

### releaseCharBuffer

    public final void releaseCharBuffer(BufferRecycler.CharBufferType type,
                                        char[] buffer)

Copyright © 2012 FasterXML. All Rights Reserved.