Sto leggendo il libro Concorrenza Java in pratica. Nel capitolo 15, stanno parlando degli algoritmi di non blocco e del metodo confronto-e-swap (CAS).Concorrenza Java: CAS vs Blocco
È scritto che i CAS funzionano molto meglio dei metodi di blocco. Voglio chiedere alle persone che hanno già lavorato con entrambi questi concetti e mi piacerebbe sentire quando preferisci quale di questi concetti? È davvero molto più veloce?
Per me, l'utilizzo di serrature è molto più chiaro e più facile da capire e forse anche meglio per mantenere (per favore correggetemi se sbaglio). Dovremmo davvero concentrarci sulla creazione del nostro codice concorrente correlato al CAS rispetto ai lucchetti per ottenere un incremento delle prestazioni migliore o la sostenibilità è più importante?
So che forse non c'è una regola rigida quando usare cosa. Ma vorrei solo sentire alcune opinioni, esperienze con il nuovo concetto di CAS.
Accetto, ponendo l'accento sulla * spesa di calcolo di un nuovo valore *. Spesso è così grande che la strategia non bloccante perde per il lock. –