作家
登录

Java并发编程之并发代码设计

作者: 来源: 2017-09-19 16:53:11 阅读 我要评论

  •     final private int green; 
  •     final private int blue; 
  •     final private String name
  •  
  •     private void check(int red, 
  •                        int green, 
  •                        int blue) { 
  •         if (red < 0 || red > 255 
  •             || green < 0 || green > 255 
  •             || blue < 0 || blue > 255) { 
  •             throw new IllegalArgumentException(); 
  •         } 
  •     } 
  •  
  •     public ImmutableRGB(int red, 
  •                         int green, 
  •                         int blue, 
  •                         String name) { 
  •         check(red, green, blue); 
  •         this.red = red; 
  •         this.green = green; 
  •         this.blue = blue; 
  •         this.name = name
  •     } 
  •  
  •     public int getRGB() { 
  •         return ((red << 16) | (green << 8) | blue); 
  •     } 
  •  
  •     public String getName() { 
  •         return name
  •     } 
  •  
  •   
  •  
  • 同时宣布users的时刻也借居宣布了User对象的引用。

    事实弗成变对象

    同步解决了三个互相接洽关系的问题:

    • 原子性:哪些指令必须是弗成瓜分的
    • 可见性:一个线程履行的结不雅对另一个线程是可见的
    • 有序性:某个线程的操作结不雅对其它线程来看是无序的

        推荐阅读

        Web的现状:网页性能提升指南

      【沙龙】51CTO诚邀您9月23号和多位技巧大年夜咖一路聊智能CDN的优化之路,抓紧时光哦! 互联网成长异常敏捷,所以我们创造了Web平台。平日 我们会忽视连通性等问题,但用户们却不会熟视无睹>>>详细阅读


      本文标题:Java并发编程之并发代码设计

      地址:http://www.17bianji.com/lsqh/37528.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)