Java/Multithreading: differenze tra le versioni

Wikibooks, manuali e libri di testo liberi.
Contenuto cancellato Contenuto aggiunto
Creazione della pagina
(Nessuna differenza)

Versione delle 22:12, 1 lug 2009

I moderni computer sono in grado di eseguire più di una operazione alla volta, ad esempio potete stampare il vostro curriculum mentre controllate la posta o ascoltare musica mentre navigate in Internet. A livello più basso questo si traduce nell'esecuzione simultanea di più funzioni, e ognuna di queste operazioni parallele è detto thread.

Java implementa i threads come superclassi: è sufficiente derivare la classe dalla superclasse Thread, che definisce un metodo run():

class Processo extends Thread
{  public void run()
   { ...
   }
   public int parlami()
   { ...
   }
}

Poi, creare un oggetto di quella classe ed eseguirlo:

Processo p = new Processo();
p.run();

Al contrario del solito, la funzione run ritorna subito, ma il processo (l'oggetto istanziato) resta attivo. Per comunicare con il processo, potete usare la variabile (handle, in gergo threadesco) per eseguire uno qualsiasi dei suoi metodi:

numeri_vincenti = p.parlami();