私の問題:802.15.4ワイヤレスネットワークをシリアルポートに接続しています(ラッパーを使用)。パッケージをネットワークに送信して、着信パッケージをリッスンできます。ご想像のとおり、これは非常に非同期です。
ここにタスクがあります。ネットワークにコマンドを送信し、1回の関数呼び出しで応答を待ちます。例:ネットワークID1338のノードから温度を取得したい。
double getTemperature(int id) throws Exception { .... }
この「synchonized(object)wait(..)notify(..)」のすべてを実行する以外に、応答メッセージを待機するためのより良い方法はありますか?
よろしく、bigbohne
多分いくつかのスパイスを追加する:
これはすべて、ユーザーがこれらのコマンドを(ajaxを介してまたは直接)要求できるWebインターフェースで終了する必要があります。また、応答値をデータベースにキャッシュすることも考えました。しかし、いくつかのコマンドについては、MUSSは成功/失敗の直接的な答えを持っています