akka.actor

ActorSystem

class ActorSystem extends ActorRefFactory

An actor system is a hierarchical group of actors which share common configuration, e.g. dispatchers, deployments, remote capabilities and addresses. It is also the entry point for creating or looking up actors.

There are several possibilities for creating actors (see Props for details on props):

// Java or Scala
system.actorOf(props, "name")
system.actorOf(props)

// Scala
system.actorOf(Props[MyActor], "name")
system.actorOf(Props[MyActor])
system.actorOf(Props(new MyActor(...)))

// Java
system.actorOf(MyActor.class);
system.actorOf(Props(new Creator<MyActor>() {
  public MyActor create() { ... }
});
system.actorOf(Props(new Creator<MyActor>() {
  public MyActor create() { ... }
}, "name");

Where no name is given explicitly, one will be automatically generated.

Important Notice: This class is not meant to be extended by user code. If you want to actually roll your own Akka, it will probably be better to look into extending [[akka.actor.ExtendedActorSystem]] instead, but beware that you are completely on your own in that case!

Attributes
abstract
Linear Supertypes
ActorRefFactory, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. ActorSystem
  2. ActorRefFactory
  3. AnyRef
  4. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ActorSystem ()

Abstract Value Members

  1. def / (name: Iterable[String]): ActorPath

    Construct a path below the application guardian to be used with ActorSystem.actorFor.

    Construct a path below the application guardian to be used with ActorSystem.actorFor.

    Attributes
    abstract
  2. def / (name: String): ActorPath

    Construct a path below the application guardian to be used with ActorSystem.actorFor.

    Construct a path below the application guardian to be used with ActorSystem.actorFor.

    Attributes
    abstract
  3. def actorOf (props: Props, name: String): ActorRef

    Create new actor as child of this context with the given name, which must not be null, empty or start with “$”.

    Create new actor as child of this context with the given name, which must not be null, empty or start with “$”. If the given name is already in use, and InvalidActorNameException is thrown.

    See Props for details on how to obtain a Props object.

    When invoked on ActorSystem, this method sends a message to the guardian actor and blocks waiting for a reply, see akka.actor.creation-timeout in the reference.conf.

    Attributes
    abstract
    Definition Classes
    ActorRefFactory
  4. def actorOf (props: Props): ActorRef

    Create new actor as child of this context and give it an automatically generated name (currently similar to base64-encoded integer count, reversed and with “$” prepended, may change in the future).

    Create new actor as child of this context and give it an automatically generated name (currently similar to base64-encoded integer count, reversed and with “$” prepended, may change in the future).

    See Props for details on how to obtain a Props object.

    When invoked on ActorSystem, this method sends a message to the guardian actor and blocks waiting for a reply, see akka.actor.creation-timeout in the reference.conf.

    Attributes
    abstract
    Definition Classes
    ActorRefFactory
  5. def awaitTermination (): Unit

    Block current thread until the system has been shutdown.

    Block current thread until the system has been shutdown. This will block until after all on termination callbacks have been run.

    Attributes
    abstract
  6. def awaitTermination (timeout: Duration): Unit

    Block current thread until the system has been shutdown, or the specified timeout has elapsed.

    Block current thread until the system has been shutdown, or the specified timeout has elapsed. This will block until after all on termination callbacks have been run.

    Attributes
    abstract
  7. def deadLetters : ActorRef

    Actor reference where messages are re-routed to which were addressed to stopped or non-existing actors.

    Actor reference where messages are re-routed to which were addressed to stopped or non-existing actors. Delivery to this actor is done on a best effort basis and hence not strictly guaranteed.

    Attributes
    abstract
  8. def dispatcher : MessageDispatcher

    Default dispatcher as configured.

    Default dispatcher as configured. This dispatcher is used for all actors in the actor system which do not have a different dispatcher configured explicitly.

    Attributes
    abstract
    Definition Classes
    ActorSystemActorRefFactory
  9. def dispatchers : Dispatchers

    Helper object for looking up configured dispatchers.

    Helper object for looking up configured dispatchers.

    Attributes
    abstract
  10. def eventStream : EventStream

    Main event bus of this actor system, used for example for logging.

    Main event bus of this actor system, used for example for logging.

    Attributes
    abstract
  11. def extension [T <: Extension] (ext: ExtensionId[T]): T

    Returns the payload that is associated with the provided extension throws an IllegalStateException if it is not registered.

    Returns the payload that is associated with the provided extension throws an IllegalStateException if it is not registered. This method can potentially block, waiting for the initialization of the payload, if is in the process of registration from another Thread of execution

    Attributes
    abstract
  12. def guardian : InternalActorRef

    Father of all children created by this interface.

    Father of all children created by this interface.

    Attributes
    protected abstract
    Definition Classes
    ActorRefFactory
  13. def hasExtension (ext: akka.actor.ExtensionId[_ <: akka.actor.Extension]): Boolean

    Returns whether the specified extension is already registered, this method can potentially block, waiting for the initialization of the payload, if is in the process of registration from another Thread of execution

    Returns whether the specified extension is already registered, this method can potentially block, waiting for the initialization of the payload, if is in the process of registration from another Thread of execution

    Attributes
    abstract
  14. def isTerminated : Boolean

    Query the termination status: if it returns true, all callbacks have run and the ActorSystem has been fully stopped, i.

    Query the termination status: if it returns true, all callbacks have run and the ActorSystem has been fully stopped, i.e. awaitTermination(0 seconds) would return normally. If this method returns false, the status is actually unknown, since it might have changed since you queried it.

    Attributes
    abstract
  15. def log : LoggingAdapter

    Convenient logging adapter for logging to the ActorSystem.eventStream.

    Convenient logging adapter for logging to the ActorSystem.eventStream.

    Attributes
    abstract
  16. def logConfiguration (): Unit

    Log the configuration.

    Log the configuration.

    Attributes
    abstract
  17. def lookupRoot : InternalActorRef

    Attributes
    protected abstract
    Definition Classes
    ActorRefFactory
  18. def name : String

    The name of this actor system, used to distinguish multiple ones within the same JVM & class loader.

    The name of this actor system, used to distinguish multiple ones within the same JVM & class loader.

    Attributes
    abstract
  19. def provider : ActorRefProvider

    Attributes
    protected abstract
    Definition Classes
    ActorRefFactory
  20. def registerExtension [T <: Extension] (ext: ExtensionId[T]): T

    Registers the provided extension and creates its payload, if this extension isn't already registered This method has putIfAbsent-semantics, this method can potentially block, waiting for the initialization of the payload, if is in the process of registration from another Thread of execution

    Registers the provided extension and creates its payload, if this extension isn't already registered This method has putIfAbsent-semantics, this method can potentially block, waiting for the initialization of the payload, if is in the process of registration from another Thread of execution

    Attributes
    abstract
  21. def registerOnTermination (code: Runnable): Unit

    Register a block of code (callback) to run after all actors in this actor system have been stopped.

    Register a block of code (callback) to run after all actors in this actor system have been stopped. Multiple code blocks may be registered by calling this method multiple times. The callbacks will be run sequentially in reverse order of registration, i.e. last registration is run first.

    Attributes
    abstract
  22. def registerOnTermination [T] (code: ⇒ T): Unit

    Register a block of code (callback) to run after all actors in this actor system have been stopped.

    Register a block of code (callback) to run after all actors in this actor system have been stopped. Multiple code blocks may be registered by calling this method multiple times. The callbacks will be run sequentially in reverse order of registration, i.e. last registration is run first.

    Attributes
    abstract
  23. def scheduler : Scheduler

    Light-weight scheduler for running asynchronous tasks after some deadline in the future.

    Light-weight scheduler for running asynchronous tasks after some deadline in the future. Not terribly precise but cheap.

    Attributes
    abstract
  24. def settings : Settings

    The core settings extracted from the supplied configuration.

    The core settings extracted from the supplied configuration.

    Attributes
    abstract
  25. def shutdown (): Unit

    Stop this actor system.

    Stop this actor system. This will stop the guardian actor, which in turn will recursively stop all its child actors, then the system guardian (below which the logging actors reside) and the execute all registered termination handlers (see ActorSystem.registerOnTermination).

    Attributes
    abstract
  26. def stop (actor: ActorRef): Unit

    Stop the actor pointed to by the given ActorRef; this is an asynchronous operation, i.

    Stop the actor pointed to by the given ActorRef; this is an asynchronous operation, i.e. involves a message send, but if invoked on an ActorContext if operating on a child of that context it will free up the name for immediate reuse.

    When invoked on ActorSystem for a top-level actor, this method sends a message to the guardian actor and blocks waiting for a reply, see akka.actor.creation-timeout in the reference.conf.

    Attributes
    abstract
    Definition Classes
    ActorRefFactory
  27. def systemImpl : ActorSystemImpl

    Attributes
    protected abstract
    Definition Classes
    ActorRefFactory

Concrete Value Members

  1. def != (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  2. def != (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  3. def ## (): Int

    Attributes
    final
    Definition Classes
    AnyRef → Any
  4. def == (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  5. def == (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  6. def actorFor (path: Iterable[String]): ActorRef

    Java API: Look-up an actor by applying the given path elements, starting from the current context, where ".." signifies the parent of an actor.

    Java API: Look-up an actor by applying the given path elements, starting from the current context, where ".." signifies the parent of an actor.

    Example:

    public class MyActor extends UntypedActor {
      public void onReceive(Object msg) throws Exception {
        ...
        final List<String> path = new ArrayList<String>();
        path.add("..");
        path.add("myBrother");
        path.add("myNephew");
        final ActorRef target = context().actorFor(path);
        ...
    }
    }
    

    For maximum performance use a collection with efficient head & tail operations.

    Definition Classes
    ActorRefFactory
  7. def actorFor (path: Iterable[String]): ActorRef

    Look-up an actor by applying the given path elements, starting from the current context, where ".." signifies the parent of an actor.

    Look-up an actor by applying the given path elements, starting from the current context, where ".." signifies the parent of an actor.

    Example:

    class MyActor extends Actor {
      def receive = {
        case msg =>
          ...
          val target = context.actorFor(Seq("..", "myBrother", "myNephew"))
          ...
    }
    }
    

    For maximum performance use a collection with efficient head & tail operations.

    Definition Classes
    ActorRefFactory
  8. def actorFor (path: String): ActorRef

    Look-up an actor by path represented as string.

    Look-up an actor by path represented as string.

    Absolute URIs like akka://appname/user/actorA are looked up as described for look-ups by actorOf(ActorPath).

    Relative URIs like /service/actorA/childB are looked up relative to the root path of the ActorSystem containing this factory and as described for look-ups by actorOf(Iterable[String]).

    Relative URIs like myChild/grandChild or ../myBrother are looked up relative to the current context as described for look-ups by actorOf(Iterable[String])

    Definition Classes
    ActorRefFactory
  9. def actorFor (path: ActorPath): ActorRef

    Look-up an actor by path; if it does not exist, returns a reference to the dead-letter mailbox of the ActorSystem.

    Look-up an actor by path; if it does not exist, returns a reference to the dead-letter mailbox of the ActorSystem. If the path point to an actor which is not local, no attempt is made during this call to verify that the actor it represents does exist or is alive; use watch(ref) to be notified of the target’s termination, which is also signaled if the queried path cannot be resolved.

    Definition Classes
    ActorRefFactory
  10. def actorSelection (path: String): ActorSelection

    Construct an ActorSelection from the given path, which is parsed for wildcards (these are replaced by regular expressions internally).

    Construct an ActorSelection from the given path, which is parsed for wildcards (these are replaced by regular expressions internally). No attempt is made to verify the existence of any part of the supplied path, it is recommended to send a message and gather the replies in order to resolve the matching set of actors.

    Definition Classes
    ActorRefFactory
  11. def asInstanceOf [T0] : T0

    Attributes
    final
    Definition Classes
    Any
  12. def child (child: String): ActorPath

    Java API: Create a new child actor path.

  13. def clone (): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  14. def descendant (names: Iterable[String]): ActorPath

    Java API: Recursively create a descendant’s path by appending all child names.

  15. def eq (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  16. def equals (arg0: Any): Boolean

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

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  18. def getClass (): java.lang.Class[_]

    Attributes
    final
    Definition Classes
    AnyRef → Any
  19. def hashCode (): Int

    Definition Classes
    AnyRef → Any
  20. def isInstanceOf [T0] : Boolean

    Attributes
    final
    Definition Classes
    Any
  21. def ne (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  22. def notify (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  23. def notifyAll (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  24. val startTime : Long

    Start-up time in milliseconds since the epoch.

  25. def synchronized [T0] (arg0: ⇒ T0): T0

    Attributes
    final
    Definition Classes
    AnyRef
  26. def toString (): String

    Definition Classes
    AnyRef → Any
  27. def uptime : Long

    Up-time of this actor system in seconds.

  28. def wait (): Unit

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

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

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from ActorRefFactory

Inherited from AnyRef

Inherited from Any