Packages

c

akka.actor

TimerScheduler

abstract class TimerScheduler extends AnyRef

Support for scheduled self messages in an actor. It is used by mixing in trait Timers in Scala or extending AbstractActorWithTimers in Java.

Timers are bound to the lifecycle of the actor that owns it, and thus are cancelled automatically when it is restarted or stopped.

TimerScheduler is not thread-safe, i.e. it must only be used within the actor that owns it.

Annotations
@DoNotInherit()
Source
Timers.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TimerScheduler
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new TimerScheduler()

Abstract Value Members

  1. abstract def cancel(key: Any): Unit

    Cancel a timer with a given key.

    Cancel a timer with a given key. If canceling a timer that was already canceled, or key never was used to start a timer this operation will do nothing.

    It is guaranteed that a message from a canceled timer, including its previous incarnation for the same key, will not be received by the actor, even though the message might already be enqueued in the mailbox when cancel is called.

  2. abstract def cancelAll(): Unit

    Cancel all timers.

  3. abstract def isTimerActive(key: Any): Boolean

    Check if a timer with a given key is active.

  4. abstract def startPeriodicTimer(key: Any, msg: Any, interval: FiniteDuration): Unit

    Start a periodic timer that will send msg to the self actor at a fixed interval.

    Start a periodic timer that will send msg to the self actor at a fixed interval.

    Each timer has a key and if a new timer with same key is started the previous is cancelled and it's guaranteed that a message from the previous timer is not received, even though it might already be enqueued in the mailbox when the new timer is started.

  5. abstract def startSingleTimer(key: Any, msg: Any, timeout: FiniteDuration): Unit

    Start a timer that will send msg once to the self actor after the given timeout.

    Start a timer that will send msg once to the self actor after the given timeout.

    Each timer has a key and if a new timer with same key is started the previous is cancelled and it's guaranteed that a message from the previous timer is not received, even though it might already be enqueued in the mailbox when the new timer is started.

Concrete Value Members

  1. def startPeriodicTimer(key: Any, msg: Any, interval: Duration): Unit

    Start a periodic timer that will send msg to the self actor at a fixed interval.

    Start a periodic timer that will send msg to the self actor at a fixed interval.

    Each timer has a key and if a new timer with same key is started the previous is cancelled and it's guaranteed that a message from the previous timer is not received, even though it might already be enqueued in the mailbox when the new timer is started.

  2. def startSingleTimer(key: Any, msg: Any, timeout: Duration): Unit

    Start a timer that will send msg once to the self actor after the given timeout.

    Start a timer that will send msg once to the self actor after the given timeout.

    Each timer has a key and if a new timer with same key is started the previous is cancelled and it's guaranteed that a message from the previous timer is not received, even though it might already be enqueued in the mailbox when the new timer is started.