网站开发与经营,做外贸没有网站需要什么条件,网站建设广告图,wordpress自动添加关键字推荐链接#xff1a; 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD… 推荐链接 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoDB】 总结——》【Elasticsearch】 Java——》公平锁、非公平锁 一、概念二、分类三、非公平锁的优点四、非公平锁的缺点 一、概念
锁类型特点描述公平锁排队竞争锁线程A获取到了锁资源线程B没有拿到线程B去排队线程C来了直接排到线程B的后面等待B拿到锁资源或者是B取消后才可以尝试去竞争锁资源。非公平锁先插队竞争锁如果不成功再排队竞争锁线程A获取到了锁资源线程B没有拿到线程B去排队线程C来了先尝试竞争锁资源- 成功拿到锁资源开心插队成功。- 没有拿到锁资源依然要排到线程B的后面等待B拿到锁资源或者是B取消后才可以尝试去竞争锁资源。
二、分类
锁类型描述synchronized只有非公平锁ReentrantLock有公平锁 非公平锁ReentrantReadWriteLock有公平锁 非公平锁
三、非公平锁的优点
每当锁被释放后任何一个线程都有机会竞争到锁有效提高执行性能。
四、非公平锁的缺点
可能会产生线程饥饿现象。