4

ProgrammableRemote を akka に実装したいとしましょう -

   ProgrammableRemote

    - WatchMovie
          1. Tv ! PowerOn
          1.1 Tv ! ChangeInput 3
          2. DVD ! PowerOn
          3. AVReceiver ! PowerOn
          3.1 AVReceiver ! SetInput 'DVD'

先物を使用して、1 と 1.1 (および 3. と 3.1) を並べることができます。ただし、これにより 1.1 はアクターの受信スレッドとは別のスレッドで実行されます。「pipeTo self」を使用する場合、「receive」メソッドで TV からの「PowerOn completed」メッセージのケースを処理する必要があります。

理想的には、アクターの受信を拡張して、未処理のリクエストに基づいて動的に他のアクターからの応答を処理できるようにしたいと考えています。このユースケースのakkaに解決策はありますか?

4

1 に答える 1

1

メッセージを送信するだけで、メッセージの順序は送信者ごとに保持されるため、電源を入れる前に ChangeInput を取得した場合は、とにかくそれに対処する必要があります。「become」または Akka FSM DSL を使用して、さまざまな状態をエンコードし、各状態で使用できるコマンドを指定します。

于 2012-10-21T11:38:53.570 に答える