> Fully automatic memory-managed languages should be considered first.
Of which none has solved concurrency. Some like Java prevents UB but garbage data will still be produced if you don’t diligently protect the access of the shared data.
Of which none has solved concurrency. Some like Java prevents UB but garbage data will still be produced if you don’t diligently protect the access of the shared data.
The hope when Java developed this memory model was that loss of SC is something humans can cope with, it was not, the behaviour is too strange.
To solve interweaving, add mutexes. And once you have mutexes you'll be protected from weak memory models.
Well, the result is safe but unknowable. I would call that garbage data.