(1)并发问题都归结为如何协调并发状态.可变状态越少,保证
线程安全就越容易.
(2)尽量将域声明为final类型,除非
他们的需要是可改变的
(3)不可变对象天生是
线程安全的.
不可变对象极大的减轻了并发编程的压力,他们简单而且安全.可以再没有锁货 防御性复制的情况下自由的共享发布
(4)封装使管理复杂度变得更可行.
(5)用锁来保每一个可变变量(此变量为多线程共享)
(6)在运行负荷操作期间持有锁
(7)在非
同步的多想的情况下,访问可变变量的程序是存在隐患的
(8)不要依赖于可以需要同步的小聪明
(9)在设计类时就要考虑线程安全.
(10)文档化你的同步策略