`
sunhuaer123
  • 浏览: 6073 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Java并行开发笔记2

    博客分类:
  • java
阅读更多

可变的Point类

@NotThreadSafe
public class MutablePoint{

   public int x,y;

   public MutablePoint(){x=0;y=0;}
   public MutablePoint(MutablePoint p){
      this.x=p.x;
      this.y=p.y;
   }
}

 不可变的Point类

@Immutable
public class Point{

   public final int x,y;

   public Point(int x, int y){
      this.x = x;
      this.y = y;
   }


}

 线程安全且可变的Point类

@ThreadSafe
public class SafePoint{
   @GuardedBy("this") private int x,y;

    private SafePoint(int [] a) {this(a[0],a[1]);}

    public SafePoint(SafePoint p) { this(p.get()); }

    public SafePoint(int x, int y)
    {
        this.x = x;
        this.y = y;
    }

    public synchronized int[] get() {
         return new int[] { x, y};
    }

    public synchronized void set(int x, int y) {
         this.x = x;
         this.y = y;
    }
}

 

 

分享到:
评论

相关推荐

    Java JDK 7学习笔记(国内第一本Java 7,前期版本累计销量5万册)

     《java jdk 7学习笔记》适合java的初中级读者,以及广大java应用开发人员。 作译者 林信良(网名:良葛格) 学历:台湾大学电机工程学系 经历:台湾升阳教育训练技术顾问、专业讲师,oracle授权训练中心讲师 ...

    实战Java高并发程序设计 .pdf 下载

    在过去单核CPU时代,单任务在一个时间点只能执行单一程序,随着多核CPU的发展,并行程序开发就显得尤为重要。 《实战Java高并发程序设计》主要介绍基于Java的并行程序设计基础、思路、方法和实战。第一,立足于...

    Java并发编程学习笔记 pdf 多线程编程

    Java并发编程学习笔记,研究JAVA并发多线程编程的一本教程,使用并发技术可以开发出并行算法,充分利用多处理器的计算能力,避免硬件资源浪费。目前,在JAVA并发编程方面的论述系统且内容详实的技术资料不太多,Java...

    Java运行环境 Java SE Runtime Environment 8.0.172.x64官方多语言正式版

    Java SE 8 通过减少样板代码,改进了集合和注释,简单的并行编程模型和更有效地利用现代多核处理器,提高了开发人员的工作效率和显着的增强了应用程序的性能。 Java SE 8u172 版本更新:2018年4月17日

    Java运行环境 Java SE Runtime Environment 8.0.172.x86官方多语言正式版

    Java SE 8 通过减少样板代码,改进了集合和注释,简单的并行编程模型和更有效地利用现代多核处理器,提高了开发人员的工作效率和显着的增强了应用程序的性能。 Java SE 8u172 版本更新:2018年4月17日

    Java优化编程(第2版)

    Java优化编程(第2版)通过丰富、完整、富有代表性的实例,展示了如何提升Java应用性能,并且给出了优化前与优化后的Java应用程序的性能差别,以实际的实例与数字告诉你,为什么不可以这么做,应该怎么做,深入分析...

    Java并发编程(学习笔记).xmind

    (3)简化异步事件的处理:服务器应用程序在接受来自多个远程客户端的请求时,如果为每个连接都分配一个线程并且使用同步IO,就会降低开发难度 (4)用户界面具备更短的响应时间:现代GUI框架中大都使用一个...

    javasnmp源码-development-note:开发笔记

    snmp源码软件开发笔记 请分叉并贡献。 编排、配置管理和 DevOps 工具: - Packer 是一种用于从单一源配置为多个平台创建相同机器映像的工具。 - 服务器自动化框架和应用 - Vagrant 是用于创建和配置虚拟开发环境的...

    阿里云ossjava源码-awesomelibs:各种开发语言和开发工具的很棒的库

    适用于各种开发语言和开发工具的很棒的库。 给出了一些推荐的选项。 您还可以看到更多选项。 本网站来源: 常见的 石英 提琴手 戈格斯 影袜 kcptun 代理链 海文件 邮差 代理 平++ 图形语言 免费的 SSL 证书 ...

    java程序员刷题软件-Portfolio:著名计划和项目的集合

    java程序员刷题软件文件夹 这个存储库包含我参与过的著名程序和项目的集合。 README 为每个程序提供了简要说明,以及...我开发的轻量级笔记应用程序,灵感来自 Google Keep。 从美国境内的监测站收集预测和历史潮汐信

    流动站java笔试题-notes:只是我自己的笔记

    流动站java笔试题我写的笔记到处都是,我的写作也是如此。 所以我将尝试将它集中在这里。 专注于语言:C++、Javascript 和 Go。 我将在我生命的接下来几年中使用这些语言 - 最好用几种语言完善自己,而不是把所有...

    基于lucene和nutch的开源搜索引擎资料集合

    其中内容均为前段时间研究开源搜索引擎时搜集参考的资料,非常齐全包含的内容有: Computing PageRank Using Hadoop.ppt Google的秘密PageRank彻底解说中文版.doc ...用_Hadoop_进行分布式并行编程.doc

    notes:我的笔记-PWA笔记本

    沙里亚尔的笔记 原则 比特科技 算法 CI / CD 开发运维 地理信息系统 集成开发环境 3D 资源 概念 统一 虚拟现实 云 云 蔚蓝 Kubernetes 语言能力 Java s VueJS 打字稿 React p Cpp C# F# 去 斯威夫特/ ...

    port-scanner:使用 NMAP 扫描端口并在 mysql 数据库中保存历史记录的演示项目

    开发笔记 在我的 Windows 8 笔记本电脑上,当您尝试一次扫描两个或三个以上的主机时,我注意到 NMAP 存在问题。 我正在并行运行请求,所以我不确定这是否是由 java 承诺或 NMAP 本身无法同时运行引起的错误。 这个...

    Rational Rose学习.doc

    Rational Rose 支持多用户并行开发,可以使用控制单元来协调多个用户的开发工作。 输入输出模型 在 Rational Rose 中,输入输出模型是指输出包或者类时,必须选定逻辑视图里的东西;而要输出模型,则是选定...

    基于SpringBoot+Vue智能学习平台系统(源码+部署说明+演示视频+源码介绍).zip

    这种架构使得前后端可以并行开发,大大提高了开发效率。 系统功能丰富,包括用户管理、课程管理、在线学习、考试评估等多个模块。用户管理模块可以实现用户的注册、登录、信息修改等功能;课程管理模块可以对课程...

    materiais-pos-graduacao:Minas Gerais天主教大学(PUC-MG)使用Python 3以及关系和非关系数据库(Oracle,MongoDB,Redis,Neo4J)的脚本和笔记本存储库,用于数据科学和大数据的毕业后研究)

    在专业课程中开发的材料和脚本 Minas Gerais天主教大学(PUC-MG)使用Python 3以及关系和非关系数据库(Oracle,MongoDB,Redis,Neo4J)的脚本和笔记本存储库,用于数据科学和大数据的毕业后研究) 技术涵盖 的...

    nifi-minifi:Apache MiNiFi(Apache NiFi的子项目)

    执行mvn clean install或者对于并行构建,执行mvn -T 2.0C clean install 。 在使用了几年的适度开发笔记本电脑上,后者的构建花费了不到两分钟的时间。 经过大量输出之后,您最终应该会看到一条成功消息。

    javaee笔试题-ES2016_14353173:ES2016_14353173

    layer)是一个用于编写并行应用程序的软件开发框架。DOL允许指定基于计算Kahn进程网络模型的应用程序和具有一个基于SystemC的模拟引擎的特点。而且,DOL提供了一个基于XML规范的格式来描述在一个多处理器系统上的并行...

    matlab梁代码-MyBlog:我的博客

    matlab 梁代码 目录 C++ C++ STL Java 数据结构与算法 Internet ...《CUDA并行程序设计-GPU编程指南》读书笔记 《设计模式之禅》读书笔记 微信公众平台开发 WordPress git IDE UML Matlab DSP 其他

Global site tag (gtag.js) - Google Analytics