2017-02-26 9 views
-1

私たちは、10個のスレッドでプロセスを実行しています。JAVAで非同期スレッドの変数を読み取る

すべてのスレッドは、最初の手順でIDを生成します(通常、VMセッションを取得する必要があるため、約10秒かかる)。

IDを取得すると、その操作が実行されます。

パフォーマンスの観点からは、スレッドの変数に値を受け取り、呼び出し関数で何らかのアクションを実行するときにその変数にアクセスしたいと考えています。

私たちはGET/SETメソッドを作成して、その変数の値をThreadに書き込み、呼び出しメソッドでそれを読み取っていますが、Functionレベルを呼び出すときには常にNULLになります。

スレッド変数の値(ポーリングが利用可能になる)にアクセスするベストプラクティスは何ですか?

ありがとうございます。

ラチット

答えて

0

値が利用可能になるまでゲッターブロックを持ってください。 getterは呼び出し側のスレッド上で実行されるため、呼び出し側が変数が使用できるようになるまで待つ必要がある場合は、これを実行します。

0

コレクションを持つシングルトンスレッドマネージャオブジェクトを作成する必要があります。すべてのスレッドがマネージャークラスに自己登録すると、同じVM内のどこからでもこれらのスレッドとそのデータにアクセスできます。

Good Luck。

関連する問題