Передача параметров в потоки Java
В Java потоки создаются путем реализации интерфейса Runnable. По умолчанию объекты Runnable не принимают никаких аргументов. Однако, если вам нужно передать параметры в поток, есть две стратегии: классы-оболочки или анонимные классы.
Классы-оболочки
Один способ передать параметры в поток thread — использовать класс-оболочку. Это предполагает создание класса, который реализует интерфейс 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, определяет анонимный класс, который реализует интерфейс Runnable и получает myParameter в качестве параметра.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3