Packages

final class StagedPools extends StorageProvider

A group of StoragePool, organized in stages.

Example

val pool = StagedPools().directStage(100, 5, true)    // 1st stage
                        .directStage(1000, 10, false) // 2nd stage
                        .defaultAllocateHeap()        // default handler
                        .build()

val storage = pool.getStorage(512)
val buffer = new CircularBuffer(storage)

This code creates a new group of staged pools and uses it to create a CircularBuffer with a capacity of at least 512 bytes.

When getStorage(capacity) is called:

  • If capacity <= 100, a storage from the 1st stage is returned. Up to 5 storages are kept in the pool, but more storages can be created as needed (isMoreAllocationAllowed=true).
  • If capacity <= 1000, a storage from the 2nd stage is returned. Up to 10 storages are kept in the pool. If 10 storages from this stage are already being used, and more storages are requested, an exception is thrown.
  • If capacity > 1000, the default handler is called. In this case, defaultAllocateHeap allocates a new heap buffer of the requested capacity.
Linear Supertypes
StorageProvider, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. StagedPools
  2. StorageProvider
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def getPool(minCapacity: Int): Option[StoragePool]
  11. def getStorage(minCapacity: Int): BytesStorage

    returns

    a storage with a capacity of at least minCapacity

    Definition Classes
    StagedPoolsStorageProvider
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  18. def toString(): String
    Definition Classes
    AnyRef → Any
  19. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from StorageProvider

Inherited from AnyRef

Inherited from Any

Ungrouped