attraverso il mutex ci assicuriamo che i due thread svolgano un'operazione per volta, in modo da avere stampato la variabile e la lettura attraverso due thread differenti che abbiamo SINCRONIZZATO
consumatore
legge la variabile conta e la stampa
produttore
incrementa la variabile "conta" e la stampa
semafori
programma semafori
c++
definizione
In informatica, un semaforo è un tipo di dato astratto (Abstract Data Type) gestito da un sistema operativo multitasking per sincronizzare l'accesso a risorse condivise tra task (cioè processi o thread)
mutex
si usa quindi per non far lavorare i thread sulla stessa risorsa, "bloccandola",
In informatica il termine mutex (contrazione dell'inglese mutual exclusion, mutua esclusione) indica un procedimento di sincronizzazione fra processi o thread concorrenti, con il quale si impedisce che più task paralleli accedano contemporaneamente ai dati in memoria o ad altre risorse soggette a race condition (o corsa critica).
thread
Un thread o thread di esecuzione, in informatica, è una suddivisione di un processo in due o più filoni o sottoprocessi, che vengono eseguiti concorrentemente