在這種情況下,一個線程,特別是 HandlerThread,在 test() 方法中執行,並且值在該線程內修改。挑戰在於將此修改後的值傳回給 test() 方法以供進一步處理或使用。
一種方法是建立一個實作 Runnable 介面的線程,如提供的程式碼片段所示。在此執行緒的 run() 方法中,您可以根據需要設定該值。此外,您可以建立 getValue() 方法來從外部檢索該值。
要檢索該值,您可以啟動線程,等待其完成(透過 join()),然後存取該值使用 getValue() 方法。
public class CustomThread implements Runnable {
private volatile int value;
@Override
public void run() {
value = 2;
}
public int getValue() {
return value;
}
}
main方法中:
CustomThread thread = new CustomThread();
Thread t = new Thread(thread);
t.start();
t.join();
int retrievedValue = thread.getValue();
請記住,使用像 value 這樣的易失性變數可確保跨執行緒的可見度和一致性。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3