Lezione 13 · Canale 1 · giovedì 22 ottobre 2026

Thread, concorrenza e interfacce grafiche

Progettazione del Software

Formulario

Thread

  • Runnable: il lavoro sta in run()
  • new Thread(r): crea il thread
  • t.start(): run() in un flusso a parte
  • r.run(): nello stesso flusso
  • t.join(): attende la fine del thread
  • Thread.sleep(ms): pausa, può lanciare InterruptedException

Dati condivisi

  • campi statici e di istanza: condivisi
  • variabili locali: una per invocazione
  • lettura prima di scrivere: valore vecchio

Interfaccia grafica

  • ciclo degli eventi: attende, richiama gli ascoltatori, ridisegna
  • l'ascoltatore gira nel thread dell'interfaccia
  • ascoltatore lungo: finestra bloccata, eventi in coda
  • operazione lunga: in un thread a parte