java多线程编程,最根本从三个方面去考虑
1、独占
2、状态依赖
3、创建线程。
简单的规则:
1、永远只是在更新对象的成员变量时加锁
2、永远只是在访问有可能被更新对象的成员变量时才加锁
3、永远不要在调用其他对象的方法时加锁。