面试小结

1.ReadWriteLock

       读写分离锁,读锁可以在没有写锁的时候被多个线程同时持有,写锁是独占的。 每次只能有一个写线程,但是同时可以有多个线程并发地读数据。一个获得了读锁的线程必须能看到前一个释放的写锁所更新的内容。 读写锁比互斥锁允许对于共享数据更大程度的并发。ReadWriteLock适用于读多写少的并发情况。 

2.condition实现控制多线程执行顺序

        java中控制线程通信的传统方式利用synchronized关键字来保证同步,结合wait(),notify(),notifyAll()控制线程通信。不灵活。

       使用Condition可以让那些已经得到lock对象却无法继续执行的线程释放lock对象,Condition对象也可以唤醒处于等待的线程。Condition 将 Object 监视器方法(waitnotify 和 notifyAll)分解成截然不同的对象, 其中,Lock替代了 synchronized 方法和语句的使用,Condition 替代了 Object 监视器方法的使用。 Condition 实例实质上被绑定到一个锁上。要为特定 Lock 实例获得 Condition 实例,使用其newCondition() 方法。

       await替代wait,signal替代notify,signalAll替代notifyAll。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值