
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 Java 有 JMM 处理 |
5 xxzs 2017-09-28 19:40:46 +08:00 可以看看 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 有兴趣还可以研究一下 C++的 std::memory_order |