向 Java 執行緒傳遞參數
在 Java 中,執行緒是透過實作 Runnable 介面來建立的。預設情況下,Runnable 物件不帶任何參數。但是,如果需要向線程傳遞參數,有兩種策略:包裝類別或匿名類別。
包裝類別
將參數傳遞給執行緒的一種方法執行緒就是使用包裝類別。這涉及創建一個實現 Runnable 介面並在其建構函數中接受所需參數的類別。這是一個例子:
public class ParameterizedRunnable implements Runnable {
private final Object parameter;
public ParameterizedRunnable(Object parameter) {
this.parameter = parameter;
}
public void run() {
// Use the passed parameter here
}
}
然後就可以使用此類來建立執行緒並向其傳遞參數:
Runnable runnable = new ParameterizedRunnable(myParameter);
new Thread(runnable).start();
匿名類別
匿名類別也可用於向執行緒傳遞參數。匿名類別是同時定義和實例化的類別。以下是使用匿名類別向執行緒傳遞參數的範例:
Thread thread = new Thread(() -> {
// Use the passed parameter here
}, myParameter);
thread.start();
在此範例中,傳遞給 Thread 建構函式的 lambda 表達式定義了一個實作 Runnable 介面並接收 myParameter 作為其參數的匿名類別。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3