Spinlock
Definizione rapida
Meccanismo di sincronizzazione nel quale un thread attende un lock controllandolo ripetutamente senza sospendersi.
Spiegazione
Con uno spinlock il processore continua a eseguire un breve ciclo finché la risorsa condivisa non diventa disponibile. Questa attesa attiva evita il costo di sospensione e riattivazione, ma consuma tempo di CPU mentre il blocco resta occupato.
Esempio pratico
Due core aggiornano una struttura del kernel; il secondo gira in attesa per pochi istanti finché il primo rilascia lo spinlock.
Spiegazione tecnica
Acquisizione e rilascio richiedono operazioni atomiche e corrette barriere di memoria. È adatto a sezioni critiche brevissime, soprattutto quando il thread non può essere messo a dormire.
Da non confondere con
Non è un mutex sospensivo: se l'attesa può durare, un mutex libera la CPU e risulta generalmente più efficiente.