abstract class ActorRef extends Comparable[ActorRef] with Serializable
- Alphabetic
- By Inheritance
- ActorRef
- Serializable
- Comparable
- AnyRef
- Any
- by actorRef2Scala
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ActorRef()
Abstract Value Members
- abstract def !(message: Any)(implicit sender: ActorRef = Actor.noSender): Unit
Scala API: Sends a one-way asynchronous message.
Scala API: Sends a one-way asynchronous message. E.g. fire-and-forget semantics.
If invoked from within an actor then the actor reference is implicitly passed on as the implicit 'sender' argument.
This actor 'sender' reference is then available in the receiving actor in the 'sender()' member variable, if invoked from within an Actor. If not then no sender is available.
actor ! message
- abstract def path: ActorPath
Returns the path for this actor (from this actor up to the root actor).
Concrete Value Members
- final def compareTo(other: ActorRef): Int
Comparison takes path and the unique id of the actor cell into account.
Comparison takes path and the unique id of the actor cell into account.
- Definition Classes
- ActorRef → Comparable
- final def equals(that: Any): Boolean
Equals takes path and the unique id of the actor cell into account.
Equals takes path and the unique id of the actor cell into account.
- Definition Classes
- ActorRef → AnyRef → Any
- def forward(message: Any)(implicit context: ActorContext): Unit
Forwards the message and passes the original sender actor as the sender.
Forwards the message and passes the original sender actor as the sender.
Works, no matter whether originally sent with tell/'!' or ask/'?'.
- final def hashCode(): Int
- Definition Classes
- ActorRef → AnyRef → Any
- final def tell(msg: Any, sender: ActorRef): Unit
Sends the specified message to this ActorRef, i.e.
Sends the specified message to this ActorRef, i.e. fire-and-forget semantics, including the sender reference if possible.
Pass akka.actor.ActorRef
noSender
ornull
as sender if there is nobody to reply to - def toString(): String
- Definition Classes
- ActorRef → AnyRef → Any
Shadowed Implicit Value Members
- def !(message: Any)(implicit sender: ActorRef = Actor.noSender): Unit
Sends a one-way asynchronous message.
Sends a one-way asynchronous message. E.g. fire-and-forget semantics.
If invoked from within an actor then the actor reference is implicitly passed on as the implicit 'sender' argument.
This actor 'sender' reference is then available in the receiving actor in the 'sender()' member variable, if invoked from within an Actor. If not then no sender is available.
actor ! message
- Implicit
- This member is added by an implicit conversion from to performed by method actorRef2Scala in akka.actor.
- Shadowing
- This implicitly inherited member is shadowed by one or more members in this class.
To access this member you can use a type ascription:(actorRef: ScalaActorRef).!(message)(sender)
- Definition Classes
- ScalaActorRef
Immutable and serializable handle to an actor, which may or may not reside on the local host or inside the same akka.actor.ActorSystem. An ActorRef can be obtained from an akka.actor.ActorRefFactory, an interface which is implemented by ActorSystem and akka.actor.ActorContext. This means actors can be created top-level in the ActorSystem or as children of an existing actor, but only from within that actor.
ActorRefs can be freely shared among actors by message passing. Message passing conversely is their only purpose, as demonstrated in the following examples:
Scala:
Java:
ActorRef does not have a method for terminating the actor it points to, use akka.actor.ActorRefFactory
.stop(ref)
, or send a akka.actor.PoisonPill, for this purpose.Two actor references are compared equal when they have the same path and point to the same actor incarnation. A reference pointing to a terminated actor doesn't compare equal to a reference pointing to another (re-created) actor with the same path.
If you need to keep track of actor references in a collection and do not care about the exact actor incarnation you can use the
as key because the unique id of the actor is not taken into account when comparing actor paths.ActorPath
Not for user extension