Syn和Lock的区别
Syn是关键字属于JVM的层面,底层是通过moniterenter 和moniterexec命令来完成的,
Lock是java的一个类,是api层面的锁
并且syn有两个退出命令来保证异常之后会有退出,不需要手动释放锁。
Lock是try catch finlly 手动释放。
Syn不可以被中断。除非抛出异常或者正常运行结束。
Lock可以被中断。设置超时方法,trylock
syn非公平锁
lock默认非公平
syn 只能随机唤醒一个或者全部唤醒
lock 可以绑定事件来精准唤醒