1.起因

今天想把一个复杂的类抽成,多个类,这样类的功能单一,条理会更加清晰,但是这个类采用父方法采用了for循环,如下
A类,调用

for(){B类.do()方法
}

B类

do方法{平行逻辑方法1;平行逻辑方法2;平行逻辑方法3;
}

每个方法都是不同的逻辑,互不干扰,所以想给每个复杂的方法抽成一个类,但是我要在B类for循环里创建对象,但是开销会很大哦,所以我采用双检锁/双重校验锁单例模式(很简单):参考:http://www.runoob.com/design-pattern/singleton-pattern.html

但是这里使用了volatile 关键字,知其然,知其所以然,所以我决定了解这个东东

2.基本概念

概念:Java 内存模型中的可见性、原子性和有序性。
可见性

可见性是一种复杂的属性,因为可见性中的错误总是会违背我们的直觉。通常,我

volatile是Java提供的一种轻量级的同步机制相关推荐

  1. 【ASP.NET教程-WP教程15】ASP.NET Web Pages - C# 和 VB 实例简单而强大的开发框架,可用于构建动态的、基于Web的应用程序。它提供了一种轻量级的方式来创建和管理网页

    ASP.NET Web Pages - C# 和 VB 实例 ASP.NET Web Pages 是一种简单而强大的开发框架,可用于构建动态的.基于Web的应用程序.它提供了一种轻量级的方式来创建和管 ...

  2. java提供的4种基本控制语句结构_Java基础6-控制语句

    一.控制语句的种类 java控制语句主要分为7种 1.控制选择结构语句 if, if else switch 2.控制循环结构语句 for while do while 3.改变控制语句顺序 brea ...

  3. Java提供的几种线程池总结

    Java通过Executors提供四种线程池,分别为: newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程 newFix ...

  4. Java多线程之线程同步机制(锁,线程池等等)

    Java多线程之线程同步机制 一.概念 1.并发 2.起因 3.缺点 二.三大不安全案例 1.样例一(模拟买票场景) 2.样例二(模拟取钱场景) 3.样例三(模拟集合) 三.同步方法及同步块 1.同步 ...

  5. Java多线程(4)--线程的同步解决线程安全问题

    多线程出现安全问题 问题的原因: 当多条语句在操作同一个线程共享数据时,一个线程对多条语句只执行了一部分,还没有执行完,另一个线程参与进来执行,导致共享数据的错误. 解决办法: 对多条操作共享数据的语 ...

  6. 详解JVM内存管理与垃圾回收机制5 - Java中的4种引用类型

    在Java语言中,除了基础数据类型的变量以外,其他的都是引用类型,指向各种不同的对象.在前文我们也已经知道,Java中的引用可以是认为对指针的封装,这个指针中存储的值代表的是另外一块内存的起始地址(对 ...

  7. Java中的八种包装类

    文章目录 为什么需要包装类? Java提供的八种包装类 装箱和拆箱 整数型常量池 Integer中的常用方法 int .Integer.String之间的相互转换 为什么需要包装类? 读以下程序: p ...

  8. 提供第三种代码生成方式——通过自定义BuildProvider为ASP.NET提供代码生成

    2019独角兽企业重金招聘Python工程师标准>>> 之前写了一些关于代码生成的文章,提供了两种不同方式的代码生成解决方案,即CodeDOM+Custom Tool和T4.对于AS ...

  9. Java的互斥同步机制

    Java 提供了两种锁机制来控制多个线程对共享资源的互斥访问,第一个是 JVM 实现的 synchronized,而另一个是 JDK 实现的 ReentrantLock. synchronized 1 ...

最新文章

  1. 你听过Oracle中rownum用法吗?
  2. git 小乌龟 更新分支_时光机--git--现代程序员必备的星舰
  3. 处理js事件时,获取键盘数字注意
  4. linux 中文乱码问题的解决方法
  5. Linux配置keepalived实现nginx高可用安装过程记录
  6. 报文解析_104规约报文结构解析
  7. SQL Server 影响dbcc checkdb的 8 种因素
  8. 美国罪案故事第一季/全集American Crime Story迅雷下载
  9. CF758 D. Ability To Convert 细节处理字符串
  10. 设备底座几个常见固定方式
  11. 一种推理优化新思路,对特征图进行[随机采样-插值]
  12. element-ui表单校验
  13. html动态绑定树形菜单,jQuery ztree实现动态树形多选菜单
  14. * Redis —— Scan、SScan、HScan、ZScan
  15. html 简繁转换 批量,[推荐]几行代码轻松搞定网页的【简繁转换】
  16. 演化策略(Evolutionary Strategies)
  17. 从零开始手写 VIO
  18. 英语口语练习六十二之9种英语表达“后悔”
  19. 人人都有发言权的新媒体时代 内容审核需亮剑
  20. python中pip的使用 安装 升级 卸载包

热门文章

  1. AMD中国:没有对拼多多及其平台上任何店铺授权
  2. 人走茶凉!三星关闭最后一家中国手机工厂 因为打不过其他国产厂商?
  3. 腾讯音乐2019Q2财报:在线音乐付费用户达到创纪录的3100万
  4. 全系麒麟810+超强夜拍 荣耀9X正式发布:1399元起
  5. 华为回应“锁屏广告”事件:非官方所为
  6. 苹果挖迪士尼墙脚:喜获视频服务总监
  7. 魅族管理层换血?官方回应:信息被错误解读 黄章仍为最大股东
  8. 买写真送手机系列 小米9王源限量版预售将在这些小米之家开启
  9. 小米变了?红米Note7今日开售 坚持了9分36秒...
  10. 在网页中通过百度地图查看某地的经纬度