Ecco degli esercizi semplici con soluzione per praticare l’utilizzo dei mutex lock in C++.
Esercizio 1: Utilizzo di std::mutex per la sincronizzazione
Creare un programma che utilizza `std::mutex` per sincronizzare l'accesso a una variabile condivisa tra più thread.
Esercizio 2: Utilizzo di std::unique_lock con std::mutex
Creare un programma che utilizza `std::unique_lock` per gestire il lock di un `std::mutex`.
Esercizio 3: Utilizzo di std::mutex per proteggere una sezione critica
Creare un programma che utilizza `std::mutex` per proteggere una sezione critica durante l'accesso a una risorsa condivisa.
Esercizio 4: Utilizzo di std::mutex per sincronizzare l’output
Creare un programma che utilizza `std::mutex` per sincronizzare l'output su `std::cout` da più thread.
Esercizio 5: Utilizzo di std::timed_mutex per il timeout del lock
Creare un programma che utilizza `std::timed_mutex` per tentare di acquisire un lock con un timeout.
Esercizio 6: Utilizzo di std::recursive_mutex per la ricorsione
Creare un programma che utilizza `std::recursive_mutex` per permettere a un thread di acquisire lo stesso mutex più volte.