![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java并发编程实战-读书笔记
zhangduilei
这个作者很懒,什么都没留下…
展开
-
第3章-对象的共享
可见性 在没有同步的情况下.编译器,处理器以及运行时等都可能对操作的执行顺序进行一些意想不到的调整. 在缺乏足够同步的多线程程序中,要想对内存操作的执行顺序进行判断,几乎无法得出 正确的结论. 失效数据 非原子的64位操作 加锁与可见性 我们可以进一步理解为什么在访问某个共享且可变的变量时要求所有线程在同一个锁上同步,就是为了确保某个线程写入该变原创 2017-07-27 10:53:45 · 202 阅读 · 0 评论 -
第2章-线程安全性
编写线程安全的代码: 核心在于要对状态访问操作进行管理,特别是对共享(shared)的和可变的(mutable)状态的访问 共享意味着变量可以由多个线程同时访问, 可变则意味着变量的值在其生命周期内可以发生变化 一个对象是否需要是线程安全的,取决于他是否被多个线程访问.这指的是在程序中访问对象的方式,而不是对象要实现的功能,要使得对象是线程安全的,需要采用同步机制来协同对对象原创 2017-07-27 10:51:27 · 271 阅读 · 0 评论 -
第4章-对象的组合
设计线程安全的类 通过使用封装技术,可以使得在不对整个程序进行分析的情况下就可以判断一个类是否是线程安全的. 在设计线程安全类的过程中,需要包含以下三个基本要素: 找出构造对象状态的所有变量. 找出约束状态变量的不变性条件. 建立对象状态的并发访问管理策略. 分析对象的状态,首先从对象的域开始; 实例封闭 线程安全性的委托原创 2017-07-28 16:29:29 · 231 阅读 · 0 评论