1
ipconfiger 2017-09-28 11:18:57 +08:00
需要
|
2
aheadlead OP @ipconfiger 愿闻其详
希望能给出一些参考资料,或者类似游戏引擎的代码参考,谢谢 |
3
clearbug 2017-09-28 12:33:33 +08:00 via Android
这个东西不是都会在编程语言层面处理的么?我看 java 好像是这样的!楼主说的编程是用什么语言?
|
4
gogohigh 2017-09-28 12:54:52 +08:00 1
Java 有 JMM 处理
|
5
xxzs 2017-09-28 19:40:46 +08:00 1
可以看看 folly, 比如 ProducerConsumer Queue 里面就对 cache line 做了特别处理,
char pad0_[CacheLocality::kFalseSharingRange]; const uint32_t size_; T* const records_; FOLLY_ALIGN_TO_AVOID_FALSE_SHARING std::atomic<unsigned int> readIndex_; FOLLY_ALIGN_TO_AVOID_FALSE_SHARING std::atomic<unsigned int> writeIndex_; char pad1_[CacheLocality::kFalseSharingRange - sizeof(writeIndex_)]; }; |
6
xxzs 2017-09-28 19:41:58 +08:00 1
有兴趣还可以研究一下 C++的 std::memory_order
|