synchonized 是不可以被中断的;
lock 是可以被中断的,tryLock( long time)方法;
synchonized 是通过获取monitor的控制权
monitorEnter ,monitorExit 是一次锁的控制流程;
synchonized 即使锁内出现了异常,也会自动释放锁;
AtomicInteger :CAS( compare and swap)
CAS 和volitale 的结合使用就相当于乐观锁;
synchonized 就相当于悲观锁;
synchonized 是不可以被中断的;
lock 是可以被中断的,tryLock( long time)方法;
synchonized 是通过获取monitor的控制权
monitorEnter ,monitorExit 是一次锁的控制流程;
synchonized 即使锁内出现了异常,也会自动释放锁;
AtomicInteger :CAS( compare and swap)
CAS 和volitale 的结合使用就相当于乐观锁;
synchonized 就相当于悲观锁;