Class

monix.execution.schedulers.ExecutionModel

BatchedExecution

Related Doc: package ExecutionModel

Permalink

final case class BatchedExecution(batchSize: Int) extends ExecutionModel with Product with Serializable

ExecutionModel specifying an mixed execution mode under which tasks are executed synchronously in batches up to a maximum size.

After a batch of tasks of the recommended size is executed, the next execution should be asynchronous, forked on a different logical thread.

By specifying the ExecutionModel.recommendedBatchSize, the configuration can be fine-tuned.

Source
ExecutionModel.scala
Linear Supertypes
Serializable, Serializable, Product, Equals, ExecutionModel, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BatchedExecution
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. ExecutionModel
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BatchedExecution(batchSize: Int)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. val batchedExecutionModulus: Int

    Permalink

    Always equal to recommendedBatchSize-1.

    Always equal to recommendedBatchSize-1.

    Provided for convenience.

    Definition Classes
    BatchedExecutionExecutionModel
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  11. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  12. def nextFrameIndex(current: Int): Int

    Permalink

    Returns the next frame index in the run-loop.

    Returns the next frame index in the run-loop.

    If the returned integer is zero, then the next cycle in the run-loop should execute asynchronously.

    Definition Classes
    BatchedExecutionExecutionModel
  13. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  14. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. val recommendedBatchSize: Int

    Permalink

    Recommended batch size used for breaking synchronous loops in asynchronous batches.

    Recommended batch size used for breaking synchronous loops in asynchronous batches. When streaming value from a producer to a synchronous consumer it's recommended to break the streaming in batches as to not hold the current thread or run-loop indefinitely.

    This is rounded to the next power of 2, because then for applying the modulo operation we can just do:

    val modulus = recommendedBatchSize - 1
    // ...
    nr = (nr + 1) & modulus

    For the JVM the default value can be adjusted with:

      java -Dmonix.environment.batchSize=2048 \
           ...
    

    Definition Classes
    BatchedExecutionExecutionModel
  16. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  17. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from ExecutionModel

Inherited from AnyRef

Inherited from Any

Ungrouped