Passando parâmetros para Java Threads
Em Java, threads são criados implementando a interface Runnable. Por padrão, os objetos Runnable não aceitam nenhum argumento. No entanto, se você precisar passar parâmetros para um thread, existem duas estratégias: classes wrapper ou classes anônimas.
Classes Wrapper
Uma maneira de passar parâmetros para um thread thread é usar uma classe wrapper. Isso envolve a criação de uma classe que implemente a interface Runnable e aceite os parâmetros desejados em seu construtor. Aqui está um exemplo:
public class ParameterizedRunnable implements Runnable {
private final Object parameter;
public ParameterizedRunnable(Object parameter) {
this.parameter = parameter;
}
public void run() {
// Use the passed parameter here
}
}
Você pode então usar esta classe para criar um thread e passar o parâmetro para ele:
Runnable runnable = new ParameterizedRunnable(myParameter);
new Thread(runnable).start();
Classes anônimas
Classes anônimas também podem ser usadas para passar parâmetros para threads. Uma classe anônima é uma classe definida e instanciada ao mesmo tempo. Aqui está um exemplo de uso de uma classe anônima para passar um parâmetro para um thread:
Thread thread = new Thread(() -> {
// Use the passed parameter here
}, myParameter);
thread.start();
Neste exemplo, a expressão lambda passada para o construtor Thread define uma classe anônima que implementa a interface Runnable e recebe o myParameter como seu parâmetro.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3