美文网首页
公平锁和非公平锁的对比

公平锁和非公平锁的对比

作者: 水千里 | 来源:发表于2020-07-18 23:48 被阅读0次

1、公平锁

定义:多个线程按照先到先得的策略获取锁。

优点:所有线程都有机会获得锁,不会饿死

缺点:由于所有线程都会经历阻塞态,因此唤醒阻塞线程的开销会很大。

2、非公平锁

定义:所有的线程拼运气,谁运气好,谁就获取到锁

优点:可以减少CPU唤醒线程的开销,整体的吞吐效率会高

缺点:可能会有线程长时间甚至永远获取不到锁,导致饿死。

相关文章

  • 聊聊Java中的那些锁

    说到Java中锁的分类,有很多种。本文就来聊聊公平锁、非公平锁、可重入锁、独占锁、共享锁和自旋锁。 一、公平锁和非...

  • 公平锁和非公平锁-ReentrantLock是如何实现公平、非公

    1、什么是公平锁与非公平锁 公平锁:公平锁就是保障了多线程下各线程获取锁的顺序,先到的线程优先获取锁。非公平锁:非...

  • 公平锁和非公平锁的对比

    1、公平锁 定义:多个线程按照先到先得的策略获取锁。 优点:所有线程都有机会获得锁,不会饿死 缺点:由于所有线程都...

  • 多线程并发编程

    Wait/NotifyAll标准使用 锁的特性/分类 公平、非公平锁 可重入锁 排他、非排他锁 Synchroni...

  • java并发-独占锁与共享锁,公平锁与非公平锁,重入锁与非重入锁

    java并发-乐观锁与悲观锁,独占锁与共享锁,公平锁与非公平锁,重入锁与非重入锁 java 中的锁 -- 偏向锁、...

  • JUC源码走读

    一、公平锁和非公平锁 非公平锁的源码: 可以看到非公平锁的lock,上来就先尝试获取锁。compareAndSet...

  • [转载]# 公平锁,非公平锁,乐观锁,悲观锁 公平锁/非公平锁(多线程执行顺序的维度) 概念理解 公平锁:加锁前先...

  • Java锁有哪些种类

    一 公平锁和非公平锁 公平锁:多个线程按照申请锁的顺序来获取锁 非公平锁:多个线程获取锁的顺序并不是按照申请锁的顺...

  • ReentrantLock-jdk1.8

    ReentrantLock分为公平锁和非公平锁,默认的为非公平锁 可以手动指定 先从非公平锁讲起 1 lock 首...

  • 锁 - 公平 vs 非公平

    公平锁 非公平锁 公平锁 典型的公平锁:ReentrantLock(true) 多个线程按照申请锁的顺序来获取锁。...

网友评论

      本文标题:公平锁和非公平锁的对比

      本文链接:https://www.haomeiwen.com/subject/ngmqkktx.html