文件名称:java7hashmap源码-Concurrency:这是用来学习java多线程的
文件大小:181KB
文件格式:ZIP
更新时间:2024-06-24 09:48:43
系统开源
java7 hashmap源码 concurrency 项目介绍 并发编程 可见性-volatile 通过内存屏障和禁止重排序优化实现 1.对volatile变量写操时,会在写操作后加入一条store屏障指令,将本地内存中的共享变量值刷新到主内存 2.对volatile变量读操时,会在读操作后加入一条load屏障指令,从主内存中读取共享变量 有序性 Java内存模型中,,允许编译器和处理器对指令进行重排序,但是重排序过程不会影响到单线程的执行, 却会影响到多线程并发执行的正确性 * ############## 5.安全发布对象 发布对象->对一个对象能够被当前范围之外的代码所使用 对象逸出->一种错误的发布.当一个对象还没有构造完成时.就使他被其他线程所见 安全的发布对象的4种方法 *在静态初始化函数中初始化一个对象的引用 *将对象的引用保存到volatile类型域或者AtomicReference对象中 *将对象的引用保存到某个正确的构造对象的final类域中 *将对象的引用保存到一个由锁保护的域中 ########################## 1.不可变对象 满足条件 a