1

https://github.com/playframework/play-java-websocket-exampleという変更を加えて助けが必要です。 この例文は、指定された株式IDについてはSourceに基づいています。Play Framework WebSocketの例 - 実際のソースは1つだけです(偽のジェネレータはありません)

public Source<StockUpdate, NotUsed> update() { 
    return source.throttle(1, duration, 1, ThrottleMode.shaping()) 
      .map(sq -> new StockUpdate(sq.symbol, sq.price)); 
} 

ずっと一部の例では、私が(「時計/ unwatch」株式のアイデアを)必要とするものであるので、私は非常に似た方法でそれを使用したい:すべてのSourceは、いくつかの時間間隔で新たな株式価値を生成します私はリアル、1つの証券取引所のソースに接続しているので、私は株価の時間間隔ジェネレータを私のアプリで偽造したくありません。 私はStock.update(から何とかそれを取得したい私はjava.io.InputStreamを経由して(私のアプリの他の部分での)メッセージを読むと、今のところ、私はqueue.offer(message)、今経由java.util.Queuejava.util.concurrent.LinkedBlockingQueue)に入れて)(ただし、私は「ドンそれが最良の場所であることを知っている)。

これまでのところ、Source.queue(BUFFER_LENGTH, OverflowStrategy.backpressure())などを使用できることがわかりましたが、(my)キューへの参照はありません。たぶん誰かが私のような変更を必要とし、いくつかのヒントを与えることができる

など、 はまた、私はSource.queue(BUFFER_LENGTH, OverflowStrategy.backpressure()).to(...).run(...).offer(...)を使用することができることを知っているが、生憎私はFlowUserActor.addStock(Stock)でそれを接続する方法がわからない、UniqueKillSwitch

答えて

0

これまでのところ、私はSource.queue(BUFFER_LENGTH、OverflowStrategy.backpressure())は、例えば使用できることを知ってしまったが、それは(私の)キュー

あなたへの参照を持っていませんjava.util.Queueの代わりにSource.queueを使用するようにコードを変更する可能性があります。あるいは、キューから読み取ってSource.queueにプッシュするスレッドを持つこともできます。

+0

しかし、 'Stock.java'の' Source.queue'に 'MyClass.java'のキューに入れる(提供する)方法はありますか? Source.queue(...)は 'Source >'を返します。 – Buffalo

関連する問題