zoukankan      html  css  js  c++  java
  • java缓存行对齐(缓存行二)

    缓存行对齐:对于有些特别敏感的数字,会存在线程高竞争的访问,为了保证不发生伪共享,可是使用缓存行对齐的编程方式。

    disruptor:
    
    public long p1,p2,p3,p4,p5,p6,p7 //cathe padding
    
    private volatile cursor = INITIAL_CURSOR_VALUE;
    
    public long p8,p9,p10,p11,p12,p13,p14 //cathe padding

    以上方式只针对intel CPU 生效,所以用下面方式对于任何CPU都生效:

    另外JDK8中 注解@Contended 注解可以保证不和别的在同一缓存行 需要加上:JVM -XX:-RestrictContended

    JDK7中,很多采用long padding提高效率。

  • 相关阅读:
    1
    vim配置
    pyspark
    添加底部小火箭+目录
    00
    博客园代码高亮设置
    01. 枚举类型
    01. 授权问题
    Android Studio打包签名全过程
    linux 阿里云源地址
  • 原文地址:https://www.cnblogs.com/belen87/p/14161179.html
Copyright © 2011-2022 走看看