o

akka.actor.typed

SpawnProtocol

object SpawnProtocol

A message protocol for actors that support spawning a child actor when receiving a SpawnProtocol#Spawn message and sending back the ActorRef of the child actor. Create instances through the SpawnProtocol#apply or SpawnProtocol#create factory methods.

The typical usage of this is to use it as the guardian actor of the ActorSystem, possibly combined with Behaviors.setup to starts some initial tasks or actors. Child actors can then be started from the outside by telling or asking SpawnProtocol#Spawn to the actor reference of the system. When using ask this is similar to how akka.actor.ActorSystem#actorOf can be used in classic actors with the difference that a Future / CompletionStage of the ActorRef is returned.

Stopping children is done through specific support in the protocol of the children, or stopping the entire spawn protocol actor.

Source
SpawnProtocol.scala
Linear Supertypes
Content Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SpawnProtocol
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. sealed trait Command extends AnyRef

    Not for user extension

    Not for user extension

    Annotations
    @DoNotInherit()
  2. final case class Spawn[T](behavior: Behavior[T], name: String, props: Props, replyTo: [ActorRef[T]]) extends with Product with Serializable

    Spawn a child actor with the given behavior and send back the ActorRef of that child to the given replyTo destination.

    Spawn a child actor with the given behavior and send back the ActorRef of that child to the given replyTo destination.

    If name is an empty string an anonymous actor (with automatically generated name) will be created.

    If the name is already taken of an existing actor a unique name will be used by appending a suffix to the the name. The exact format or value of the suffix is an implementation detail that is undefined. This means that reusing the same name for several actors will not result in InvalidActorNameException, but it's better to use unique names to begin with.

Value Members

  1. def apply(): [Command]

    Scala API: returns a behavior that can be commanded to spawn arbitrary children.

  2. def create(): [Command]

    Java API: returns a behavior that can be commanded to spawn arbitrary children.