File tree Expand file tree Collapse file tree 2 files changed +4
-4
lines changed
branches/try/src/doc/tarpl Expand file tree Collapse file tree 2 files changed +4
-4
lines changed Original file line number Diff line number Diff line change 1
1
---
2
2
refs/heads/master: aca2057ed5fb7af3f8905b2bc01f72fa001c35c8
3
3
refs/heads/snap-stage3: 1af31d4974e33027a68126fa5a5a3c2c6491824f
4
- refs/heads/try: 36a8b94464dd0cc7763fe3fb2fe9a3fbed273d06
4
+ refs/heads/try: 8c7111da07f20422a6bd5243b56d302f0f02c3a5
5
5
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
6
6
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
7
7
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
Original file line number Diff line number Diff line change @@ -85,12 +85,12 @@ x = 1; y *= 2;
85
85
86
86
Ideally this program has 2 possible final states:
87
87
88
- * ` y = 3 ` : (thread 2 did the check before thread 1 completed) y = 6`: (thread 2
89
- * `did the check after thread 1 completed)
88
+ * ` y = 3 ` : (thread 2 did the check before thread 1 completed)
89
+ * ` y = 6 ` : (thread 2 did the check after thread 1 completed)
90
90
91
91
However there's a third potential state that the hardware enables:
92
92
93
- * ` y = 2 ` : (thread 2 saw ` x = 2 ` , but not ` y = 3 ` , and then overwrote ` y = 3 ` )
93
+ * ` y = 2 ` : (thread 2 saw ` x = 1 ` , but not ` y = 3 ` , and then overwrote ` y = 3 ` )
94
94
95
95
It's worth noting that different kinds of CPU provide different guarantees. It
96
96
is common to separate hardware into two categories: strongly-ordered and weakly-
You can’t perform that action at this time.
0 commit comments