锁:synchronized和 lock比较

(1)synchronized 同步,拥有共同数据区,且只有一个共同数据区
(2)lock 在concurrent包里面

两者区别:

synchronizedlock
java的关键字,在jvm层面
线程执行发生异常,jvm会让线程释放锁在finally中必须释放锁,不然容易造成线程死锁
假设A线程获得锁,B线程等待。如果A线程阻塞,B线程 会一直等待可以尝试获得锁线程可以不用一直等待
可重入 不可中断 非公平可重入 可判断 可公平
少量同步大量同步

注意:两边没有公用对象,锁不住;持有同一个对象,一个整体下来
加粗样式reentrantLock 可重入锁
先上读锁,别人可以读不能写
先上写锁,别人不能读不能写

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值