Vantaggi dei Thread
Il vantaggio principale dei Thread è nelle prestazioni: operazioni come creazione, terminazione e cambio tra due thread di un processo richiedono meno tempo rispetto alla creazione, terminazione e cambio di processi. I thread migliorano anche l’efficienza della comunicazione fra i programmi in esecuzione.
Core e Thread nel Processore
Un "core" rappresenta un sottoinsieme fisico effettivo di un processore che può da solo gestire l’elaborazione, mentre un "thread" è il numero di processi effettivi che il processore può gestire contemporaneamente.
Differenza tra Processo e Thread
Il processo è l’oggetto del sistema operativo a cui sono assegnate tutte le risorse di sistema per l’esecuzione di un programma, tranne la CPU. Il thread è l’oggetto del sistema operativo o dell’applicazione a cui è assegnata la CPU per l’esecuzione.
Cosa condivide un thread? Il thread condivide con i suoi peer thread il codice in esecuzione, i dati e i file aperti. Condividendo gli stessi dati e quindi lo stesso spazio di indirizzamento, i thread di uno stesso task vedono le stesse variabili: se uno dei thread modifica una variabile, la modifica è vista anche dagli altri thread.