热门

最新

红包

立Flag

投票

同城

我的

发布
m0_53834375
小丁sugar
5 年前
truem0_53834375

求助
Python七段数码管
不知道哪错了
运行结果就是每个数字一直在画点

CSDN App 扫码分享
分享
评论
点赞
打赏
  • 复制链接
  • 举报
下一条:
synchronized和ReentrantLock的区别共同点:1. 都是来处理多线程访问对象、变量的问题。2. 都是课重入锁,同一线程可以多次获得同一个锁3. 保证了可见性和互斥性不同点1. R是显式的获得、释放;syn是jvm负责,隐式获得释放。2. R可以响应中断,可以轮回;syn不可以响应中断3. R是API级别的,syn是JVM级别4. R可以实现公平锁5. R可以通过Condition绑定多个条件6. 底层实现不一样,syn使用同步阻塞,悲观并发策略;lock是非同步阻塞,采用乐观并发策略。7. syn发生异常会自动释放线程占用的锁,不会发生死锁;R需要在finally中释放锁,不然会导致死锁。8. Lock可以让等待锁的线程响应中断,syn不行,syn使用时,等待线程会一直等待下去,不能响应中断。9. Lock可以知道有没有成功获取锁,syn无法办到。10. Lock可以提高多个线程进行读操作的效率,读写锁。
立即登录