Object

io.reactors

JvmScheduler

Related Doc: package reactors

Permalink

object JvmScheduler

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JvmScheduler
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. abstract class Dedicated extends Scheduler

    Permalink

    An abstract scheduler that always dedicates a thread to a reactor.

  2. class Executed extends Scheduler

    Permalink

    A Scheduler that reuses the target Java Executor.

    A Scheduler that reuses the target Java Executor.

    It checks if the specified executor is a ForkJoinPool that uses ReactorForkJoinWorkerThread and, if so, applies additional optimizations:

    • If schedule is called from a ForkJoinWorkerThread that belongs to the ForkJoinPool that is the executor, then a more lightweight mechanism is used to schedule the task.
    • When a frame completes execution, it calls postschedule. This will attempt to remove submitted tasks from the ForkJoinPool a certain of times and execute them directly. The scheduler.default.postschedule-count bundle configuration key is the maximum number of attempts. If removing is not successful, this immediately stops.
    • Each ReactorForkJoinWorkerThread has an associated mini-queue into which it stores at most one scheduled Frame. Any frame must first be in the mini-queue before getting converted into a task and sent to the queue. Before any such worker thread returns control to the pool, it must flush its mini-queue. Simultaneously, there is a reanimator thread that periodically traverses the mini-queues of all the threads, and flushes them if necessary.
  3. class Timer extends Scheduler

    Permalink

    Executes the reactor on the timer thread.

    Executes the reactor on the timer thread.

    The reactor is run every period milliseconds. This is regardless of the number of events in this reactor's event queue.

    When the reactor runs, it flushes as many events as there are initially pending events.

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. object Dedicated

    Permalink

    Contains utility classes and implementations of the dedicated scheduler.

  5. object Key

    Permalink
  6. object Timer

    Permalink
  7. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  8. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. lazy val default: Scheduler

    Permalink

    Default reactor scheduler.

  10. lazy val defaultForkJoinPool: ForkJoinPool

    Permalink

    Default fork/join pool instance used by the default scheduler.

  11. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit

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

    Permalink
    Definition Classes
    AnyRef → Any
  15. lazy val globalExecutionContext: Scheduler

    Permalink

    Scheduler that shares the global Scala execution context.

  16. def hashCode(): Int

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

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

    Permalink
    Definition Classes
    AnyRef
  19. lazy val newThread: Scheduler

    Permalink

    A scheduler that always starts a reactor on a dedicated thread.

  20. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  22. lazy val piggyback: Scheduler

    Permalink

    A scheduler that reuses (piggybacks) the current thread to run the reactor.

    A scheduler that reuses (piggybacks) the current thread to run the reactor.

    Until the reactor terminates, the current thread is blocked and cannot be used any more. This scheduler cannot be used to start reactors from within another reactor, and is typically used to turn the application main thread into a reactor.

    See also

    org.reactors.JvmScheduler.Dedicated.Piggyback

  23. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  24. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped