8、线程的安全问题 的解决办法3之 Lock锁


解决线程安全问题的方式三: Lock锁  --- JDK5.0新增

1.面试题: synchronized 与Lock的异同?
  相同:  二者都可以解决线程安全问题
  不同:  synchronized机制在执行完相应的同步代码以后,自动的释放同步监视器
       Lock需要手动的启动同步(Lock()) ,同时结束同步也需要手动的实现(unlock())
2.优先使用顺序:
  Lock > 同步代码块(已经进入了方法体,分配了相应资源) > 同步方法(在方法体之外)

执行程序并查看控制台: