Beim Arbeiten mit Threads kann es vorkommen, dass innerhalb des Threads berechnete Werte von der Hauptmethode abgerufen werden müssen. Dies kann eine Herausforderung darstellen, da Threads nicht unbedingt über einen Mechanismus zur Rückgabe von Werten verfügen. Es gibt jedoch Strategien, um diese Einschränkung zu überwinden.
Ein Ansatz besteht darin, eine benutzerdefinierte Thread-Klasse zu verwenden, die eine Methode für den Zugriff auf den berechneten Wert enthält:
<code class="java">public class Foo implements Runnable { private volatile int value; @Override public void run() { value = 2; // Compute the value in the thread } public int getValue() { return value; } }</code>
Die Hauptmethode kann dies dann nutzen Benutzerdefinierten Thread wie folgt:
<code class="java">Foo foo = new Foo(); Thread thread = new Thread(foo); thread.start(); thread.join(); int value = foo.getValue(); // Retrieve the value computed in the thread</code>
Durch Referenzieren des Threads wie eine gewöhnliche Klasse erhält die Hauptmethode Zugriff auf den berechneten Wert.
Das obige ist der detaillierte Inhalt vonWie kann ich in einem Thread berechnete Werte von der Hauptmethode abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!