Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Pool<T>

A pool of objects.

Type parameters

  • T

Hierarchy

  • Pool

Index

Constructors

constructor

  • new Pool(createObject: IFunction0<T>, minSize: number): Pool
  • new Pool(createObject: IFunction0<T>, minSize: number, maxSize: number): Pool
  • new Pool(createObject: IFunction0<T>): Pool
  • Initializes a new instance of the fm.icelink.pool class with a specified minimum size and a maximum size of 2,147,483,647.

    Parameters

    • createObject: IFunction0<T>

      A function that creates an object.

    • minSize: number

      The minimum size.

    Returns Pool

  • Initializes a new instance of the fm.icelink.pool class. with a specified minimum size and a specified maximum size.

    Parameters

    • createObject: IFunction0<T>

      A function that creates an object.

    • minSize: number

      The minimum size.

    • maxSize: number

      The maximum size.

    Returns Pool

  • Initializes a new instance of the fm.icelink.pool class with a minimum size of 0 and a maximum size of 2,147,483,647.

    Parameters

    • createObject: IFunction0<T>

      A function that creates an object.

    Returns Pool

Properties

Private __createObject

__createObject: IFunction0<T>
internal

Private __createObjectCounter

__createObjectCounter: AtomicInteger
internal

Private __stack

__stack: ManagedConcurrentStack<T>
internal

Private _maxSize

_maxSize: number
internal

Private _minSize

_minSize: number
internal

Methods

get

  • get(): T
  • Gets an object.

    Returns T

getAvailable

  • getAvailable(): number
  • Gets the number of available objects.

    Returns number

getMaxSize

  • getMaxSize(): number
  • Gets the maximum size. Value must be >= 0. A value of 0 indicates no maximum.

    Returns number

getMinSize

  • getMinSize(): number
  • Gets the minimum size. Value must be >= 0.

    Returns number

getSize

  • getSize(): number
  • Gets the current size of the pool.

    Returns number

getTypeString

  • getTypeString(): string
  • Returns string

put

  • put(item: T): void
  • Put an object back.

    Parameters

    • item: T

    Returns void

Private setMaxSize

  • setMaxSize(value: number): void
  • internal

    Parameters

    • value: number

    Returns void

Private setMinSize

  • setMinSize(value: number): void
  • internal

    Parameters

    • value: number

    Returns void