> Which two cas do you mean are the same? As I understand, with ZGC, Unsafe.compareAndSetReference() is compiled as a cas followed by a test for the result of the cas and on failure, ZGC barriers are applied and the cas is attempted again. Roland.