Che cosa è un thread

  • Spesso nella programmazione si presenta il caso in cui alcune operazioni richiedano molto tempo e, nel frattempo, si vuole eseguire qualcosa d'altro o reagire alle richieste dell'utente
  • Si suol dire che si vuole svolgere un'operazione in background
  • In questo caso non vogliamo utilizzare un task diverso, con dati diversi, ma vogliamo semplicemente che una funzione del nostro programma venga svolta in parallelo alle altre
  • Non ci serve un task diverso, che anzi sarebbe controproducente in quanto, avendo dati separati, non consente un'agevole comunicazione con le altre funzioni
  • In questo caso noi utilizzeremo un thread, che appunto è una forma di multitasking leggero, attuato all'interno di un singolo task
  • Quando utilizziamo i thread, dobbiamo ricordare che le nostre variabili possono cambiare di valore non solo quando noi le modifichiamo, ma anche quando un altro thread le modifica
  • Ci potremo poi anche preoccupare del sincronismo tra i vari thread del nostro programma

© Ing. Stefano Salvi - All rights reserved