1

各イベントのタイムスタンプを考慮して、ファイルから JMS にイベントをリプレイしたいスキャンナリオがあります。

何十万ものイベントがあります。1 ~ 2 ミリ秒間隔のイベントもあれば、数秒間隔のイベントもあります。

これを行うための最良の方法に関する提案は、非常に高く評価されます。

4

1 に答える 1

1

これが私が試すことであり、この順序で:

  1. クォーツを使用。何十万ものイベントを処理できない理由がわかりません。
  2. なんらかの理由でクォーツが収まらない場合は、すべてのイベントのタイムスタンプを取得し(リプレイと言ったので、事前にすべて知っていると仮定しています)、それらを注文し、メインスレッドとスレッドプールを使用します。メイン スレッドは、連続するイベント間の間隔で sleep() を実行し、イベントを起動する時間になると、ハンドラを呼び出すタスクをエグゼキュータに送信します。あなたがより良い精度を望むなら(そしてビジーな待機に耐えることができるなら)、私はsleep()とbusywaitを避けます
于 2013-03-11T13:50:10.983 に答える