Closed jfbastien closed 7 years ago
Fair point. The "infinitely often" formalization is from Herlihy & Shavit, "The art of multiprocessor programming". I'm not jazzed about it myself, it's hard to figure out exactly what it means, hence the "in practice" comment, which is probably too loose to have teeth.
I see the current prose is just the same as the old prose, https://tc39.github.io/ecma262/#sec-agents. @syg, your opinion about this?
@lars-t-hansen Since it's in an informative note, I'm not worried about its having teeth or not. As it stands now, that "formally" comment reads like a throwaway sentence, and the whole section about lock-free-ness really doesn't say anything more than the obvious implementation interpretation, i.e., "implemented with a mutex that can block".
I am currently leaning towards deleting the "formally" sentence and leaving the "does not imply wait freedom" part. Thoughts?
@syg, created a PR, LMK what you think.
The PR was merged.
The definition of "lock-free" doesn't seem very solid:
A few comments:
C++ defines "lock-free" as: