Java中synchronized的不⾜之处

synchronized存在一些限制,如对于只读操作的临界区可能导致资源利用率低,因为无法并发执行。此外,当线程因IO或sleep方法阻塞时,其他线程会等待锁的释放,造成不必要的阻塞。这些问题可以通过使用Locks包中的锁来解决,提供更细粒度的控制和更好的异常处理机制。
摘要由CSDN通过智能技术生成

synchronized 有什么不⾜之处?

  1. 如果临界区是只读操作,其实可以多线程⼀起执⾏,但使⽤synchronized的话,同⼀时间只能有⼀个线程执⾏。
  2. synchronized⽆法知道线程有没有成功获取到锁
  3. 使⽤synchronized,如果临界区因为IO或者sleep⽅法等原因阻塞了,⽽当前线程⼜没有释放锁,就会导致所有线程等待。

⽽这些都是locks包下的锁可以解决的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值