trait Scheduler[T <: Txn[T]] extends AnyRef
A Scheduler
uses a logical frame clock to execute functions transactionally
at specific times. It is parametrized in S
in order to perform transactions,
but it does not store any state that would need the scheduler to be handled
with stm.Source
. It can be safely stored in a regular value.
- Alphabetic
- By Inheritance
- Scheduler
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def cancel(token: Int)(implicit tx: T): Unit
Cancels a scheduled action.
Cancels a scheduled action. It is ok to use an old token that was already completed or cancelled.
- implicit abstract def cursor: Cursor[T]
- abstract def schedule(time: Long)(fun: (T) => Unit)(implicit tx: T): Int
Schedules the execution of a function at a given time.
Schedules the execution of a function at a given time. Time is given as an "absolute" frame in the sense of
AuralContext.time
. Returns a token that can be used to cancel the action. The token is>= 0
. - abstract def stepTag[A](fun: (T) => A): A
Performs a tagged transaction step.
Performs a tagged transaction step.
- See also
- abstract def time(implicit tx: T): Long
Logical time frame based on
TimeRef.SampleRate
and with zero corresponding to creation time.Logical time frame based on
TimeRef.SampleRate
and with zero corresponding to creation time. Frames elapsed with wall-clock but are stable within a transaction.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated