2017-02-26 5 views
-1

Wir führen einen unserer Prozesse in 10 Threads gleichzeitig aus.Variable eines asynchronen Threads in JAVA lesen

Jeder Thread erzeugt im ersten Schritt eine ID (normalerweise dauert es etwa 10 Sekunden, bis eine VM-Sitzung abgeschlossen werden muss).

Sobald wir die ID bekommen, führen wir die Aktion aus.

Allerdings möchten wir für die Performance-Perspektive auf diese Variable von Thread zugreifen, wie und wann es den Wert empfängt und einige Aktion in der aufrufenden Funktion ausführen.

Wir haben GET/SET-Methoden erstellt, um den Wert dieser Variablen in Thread zu schreiben und dann in der aufrufenden Methode zu lesen, was jedoch beim Aufruf von Function level immer zu NULL führt.

Wie empfiehlt es sich, auf den Wert einer Thread-Variablen zuzugreifen (Abruf möglich)?

Vielen Dank im Voraus.

Rachit

Antwort

0

Haben die Getter-Block, bis der Wert zur Verfügung steht. Der Getter wird auf dem Thread des Aufrufers ausgeführt. Wenn der Aufrufer warten muss, bis die Variable verfügbar ist, ist dies der richtige Ort dafür.

0

Sie sollten ein Singleton Thread-Manager-Objekt mit einer Auflistung erstellen. Wenn jeder Thread sich selbst in der Manager-Klasse registriert, können Sie diese Threads und ihre Daten von überall in derselben VM erreichen.

Good Luck.

Verwandte Themen