Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Pool<T, D>

Object pool. Simplifies reusing objects.

Type parameters

  • T

  • D: any | Array<any>

Hierarchy

Index

Constructors

constructor

  • new Pool(startAmount?: number): Pool
  • Parameters

    • Default value startAmount: number = 0

      Amount of objects that should be created at the beginning.

    Returns Pool

Properties

Protected _createdAmount

_createdAmount: number

Protected availableInstances

availableInstances: T[] = []

Methods

get

  • get(instanceDefinition: D): T
  • Retrieve an object, either new or reused.

    Parameters

    • instanceDefinition: D

    Returns T

Protected Abstract newInstance

  • newInstance(): T
  • Instantiate a new object and return it.

    Returns T

Protected Abstract prepareInstance

  • prepareInstance(instance: T, definition: D): void
  • Prepares an object instance before it is returned by the get method.

    Parameters

    • instance: T
    • definition: D

    Returns void

release

  • release(...objects: T[]): void
  • Mark provided objects as unused and reusable.

    Parameters

    • Rest ...objects: T[]

    Returns void

Generated using TypeDoc