私のプログラムでは、基本的にパブリッシャーに接続してデータを取得しようとしています。基本的な機能はこれらの手順にあります
- ユーザー名とパスワードなどを使用してパブリッシャーに接続します
- データのリクエストを行います。メソッドの終了
- パブリッシャーの API がメソッドへのコールバックを提供する
onDataUpdate(Object theUpdate)
そこから、データを印刷したり、データベースに書き込んだり、必要なことを行うことができます。それはすべてうまくいきます。
私の問題は、呼び出し元のプログラムがデータを要求するとすぐにデータを受信できるように機能をラップしたいということです。つまり、公開されたメソッドを次のように見せたい
public Object getData() {
subscribeForData();
// somehow wait
return theUpdate;
}
どうすればこれを実現できますか? 更新を受信したときにスレッドを使用して待機/通知する方法はありますか? 私はstackoverflowとマルチスレッドプログラミングの初心者なので、ヘルプとサンプルコードをいただければ幸いです!! 前もって感謝します。