2017-05-09 10 views
1

アクターAが(1つまたは複数の)アクターBをどのように生成できるかを理解しようとしています。 私はすでにアクターを作成してアクティブ化するクラス「mater」を持っていますA. 私はAの俳優にそのようなものを作成する必要があります:Java&Akka:アクターAからアクターBを作成する

ActorSystem system = ActorSystem.create("my-name"); 
ActorRef actorB = system.actorOf(Props.create(ActorB.class)); 

actorB.tell("do something that A says", ActorRef.noSender()); 

感謝。

答えて

1

アクターは、FileSystemに似たツリー階層で作成されます。

あなたは俳優Bがトップレベル(システム/ユーザーのすなわち子)に存在する場合は、あなたがそれを作成する:あなたがしたい場合はBを作成するには、俳優Aの内側から、

ActorRef actorB = system.actorOf(Props.create(ActorB.class, ActorB::new)); 

は、 Aの子として、あなたは、コンテキストに同じメソッドを実行します。

ActorRef actorB = getContext().actorOf(Props.create(ActorB.class, ActorB::new)); 

あなたはactorRefを持っていたら、教えてくれとかに聞いて、通常はそれを使用することができます。

関連する問題