synchronized void syncFun(){// 同步锁属性标记,
...
}
....
}
将指定的方法标记为线程安全的原子方法,使得方法只能被顺序的独占的方式调用
JVM 内部自动维持被 synchronized 属性标记的方法的独占锁状态
synchronized static 静态方法同步锁
volatile 标记的 long和double 可以保证其上的操作是原始的
尽可能的降低同步锁的范围,同步锁会导致效率降低
当多个同步锁同时存在时应注意死锁问题