Esiste un modo per eseguire un "decremento se il risultato è positivo o zero" con un AtomicInteger
? Per chiarire il comportamento desiderato:AtomicInteger: keep not-negative
- se il valore corrente è maggiore di zero, decrementare
- se il valore corrente è uguale a zero, non fare nulla
- (valore corrente negativa non è gestita)
Non vedo un modo. Forse potresti usare 'java.util.concurrent.Semaphore'? È garantito che sia sempre positivo, e puoi decrementarlo con 'acquire()' o 'tryAcquire()'. – markspace