I was reading about the at most once property that defines what an atomic action is and I've been curios about this example:x = 0, y = 0x = y + 1 || y = y + 1If we use the 'at most once' definition, we can say that, indeed, x = y + 1 is atomic becausey is only referenced in an another thread andx is not being read by any threadBut the result of this action is not deterministic, it could be 1 or 2 depending on which operation is being computed first.I might be wrong from the start, isn't atomicity suppose to grant some kind of determinism?
Is an atomic action supposed to be deterministic?
parallelism;parallel programming