0

以下の Scala コードを考えると:

俳優1

 actor2 ! 'some_message

俳優2

 receive (or react)
  {
    case 'some_message
         sender ! 'ok_message

送信者 (actor1) について、actor2 はどのような情報を取得できますか?

複数のアクターが同じメッセージをアクター2 に送信できる場合、どのアクターからメッセージが送信されたかをどのように判断できますか? 照会できる送信者にメタデータはありますか?

Scalaの初心者です。お待ち頂きまして、ありがとうございます。

...ケンR

4

1 に答える 1

0

元のメッセージを送信したアクターをメッセージの一部として実際に送信できます。

俳優1

actor2 ! ("message", self)

俳優2

receive (or react) {
    case (string: String, sender: Actor) => {
        sender ! "another message"
    }
}

ただし、これは元の送信者にメッセージを送信するためにのみ使用する必要があることに注意してください。アクターで直接関数を呼び出すと、あらゆる種類の恐ろしいことが起こる可能性があります!

これについては、今日の Programming in Scala で実際に読んだばかりなので、詳しく調べたい場合は、この本を強くお勧めします。

于 2013-08-07T22:46:04.453 に答える