class WorkScheduler extends AnyRef
Ordering
- Alphabetic
- By Inheritance
Inherited
- WorkScheduler
- AnyRef
- Any
Implicitly
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new WorkScheduler()
Type Members
- type Action = () ⇒ Unit
Value Members
- def askDoQuickly[A](op: () ⇒ A): InterruptReq { type R = A }
-
def
cancelQueued(): Unit
Called from client: cancel all queued actions
- def dequeueAll[T](f: (Action) ⇒ Option[T]): Seq[T]
- def dequeueAllInterrupts(f: (InterruptReq) ⇒ Unit): Unit
-
def
doQuickly[A](op: () ⇒ A): A
Called from client: have interrupt executed by server and return result
-
def
moreWork: Boolean
called from Server: test whether one of todo list, throwables, or InterruptReqs is nonempty
-
def
nextWorkItem(): Option[Action]
Called from server: get first action in todo list, and pop it off
- def pollInterrupt(): Option[InterruptReq]
-
def
pollThrowable(): Option[Throwable]
Called from server: return optional exception posted by client Reset to no exception.
-
def
postWorkItem(action: Action): Unit
Called from client: have action executed by server
-
def
raise(exc: Throwable): Unit
Called from client: Require an exception to be thrown on next poll.
-
def
waitForMoreWork(): Unit
Called from server: block until one of todo list, throwables or interruptReqs is nonempty
The Scala compiler and reflection APIs.