Loading ...

Concorrenza in Java con Runnable

Concorrenza in Java con Runnable

Runnable è una interfaccia per Java che permette di impostare che una classe deve essere eseguita in thread.

Runnable ci permette di scrivere codice un pò più flessibile rispetto alla classe Thread.

Vediamo un esempio basico:

public class ConcorrenzaRunnable implements Runnable {

    private int numero = 0;

    public ConcorrenzaRunnable(int numero) {
        this.numero = numero;
    }

    @Override
    public void run() {
        for (int i = 0; i <= numero; i++) {
            System.out.println(i);
        }
    }
}

Non facciamo altro che eseguire un cliclo e stampare i numeri.

Richiamiamo il tutto così:

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

public class Main {

    public static void main(String[] args) {
        ExecutorService es = Executors.newSingleThreadExecutor();
        ConcorrenzaRunnable cr = new ConcorrenzaRunnable(10);
        es.execute(cr);
        es.shutdown();
    }

}

Enjoy!