关于同一线程里重排序

2017-03-27 19:20:06 +08:00
 esolve

http://ju.outofmemory.cn/entry/19908 这篇文章里有一个关于 happens-before 的例子 如下图

http://chuantu.biz/t5/53/1490613346x2890173854.png 里面说:因为⑧和②是同一个线程中的,③和⑨是同一个线程中的,根据 Program Order ,有⑧ hb ②,③ hb ⑨ ( hb 意思是 happens-before ) ③ hb ⑨ 我理解,因为是逻辑顺序 但是⑧ hb ②我就不懂了,这个没有 hb 关系吧,否则重排序怎么来的?

1103 次点击
所在节点    问与答
3 条回复
esolve
2017-03-27 19:20:24 +08:00
sagaxu
2017-03-27 21:43:32 +08:00
那是作者胡扯的, 8 和 2 既不是同一个对象的对些,也没有数据依赖关系,它们之间不存在明确的 order 关系。
sagaxu
2017-03-27 21:43:49 +08:00
8 和 2 既不是同一个对象的读写,也没有数据依赖关系,它们之间不存在明确的 order 关系。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/350703

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX