Package

monix.execution

schedulers

Permalink

package schedulers

Visibility
  1. Public
  2. All

Type Members

  1. final class AsyncScheduler extends ReferenceScheduler with LocalBatchingExecutor

    Permalink

    An AsyncScheduler schedules tasks to happen in the future with the given ScheduledExecutorService and the tasks themselves are executed on the given ExecutionContext.

  2. sealed abstract class ExecutionModel extends AnyRef

    Permalink

    Specification for run-loops, imposed by the Scheduler.

    Specification for run-loops, imposed by the Scheduler.

    When executing tasks, a run-loop can always execute tasks asynchronously (by forking logical threads), or it can always execute them synchronously (same thread and call-stack, by using an internal trampoline), or it can do a mixed mode that executes tasks in batches before forking.

    The specification is considered a recommendation for how run loops should behave, but ultimately it's up to the client to choose the best execution model. This can be related to recursive loops or to events pushed into consumers.

  3. final class ExecutorScheduler extends ReferenceScheduler with LocalBatchingExecutor

    Permalink

    An ExecutorScheduler is for building a Scheduler out of a ScheduledExecutorService.

  4. trait LocalBatchingExecutor extends Scheduler

    Permalink

    Adds trampoline execution capabilities to schedulers, when inherited.

    Adds trampoline execution capabilities to schedulers, when inherited.

    When it receives LocalRunnable instances, it switches to a trampolined mode where all incoming LocalRunnables are executed on the current thread.

    This is useful for light-weight callbacks. The idea is borrowed from the implementation of scala.concurrent.Future. Currently used as an optimization by Task in processing its internal callbacks.

  5. abstract class LocalRunnable extends Runnable with OnCompleteRunnable

    Permalink

    A marker for callbacks that can be batched and executed locally.

    A marker for callbacks that can be batched and executed locally.

    Idea was taken from the scala.concurrent.Future implementation. Credit should be given where due.

    DO NOT use unless you know what you're doing.

  6. final class TestScheduler extends ReferenceScheduler with LocalBatchingExecutor

    Permalink

    A scheduler meant for testing purposes.

Value Members

  1. object AsyncScheduler extends Serializable

    Permalink
  2. object ExecutionModel

    Permalink
  3. object ExecutorScheduler extends Serializable

    Permalink
  4. object LocalBatchingExecutor extends Serializable

    Permalink
  5. object TestScheduler extends Serializable

    Permalink

Ungrouped