ReentrantLock可重入锁、公平锁非公平锁区别与实现原理

ReentrantLock是lock接口的一个实现类,里面实现了可重入锁和公平锁非公平锁 ReentrantLock公平锁和不公平锁实现原理 公平锁会获取锁时会判断阻塞队列里是否有线程再等待,若有获取锁就会失败,并且会加入阻塞队列 非公平锁获取锁时不会判断阻塞队列是否有线程再等待,所以对于已经在等待 ... »

分布式锁Redission

Redisson 作为分布式锁 官方文档:https://github.com/redisson/redisson/wiki 引入依赖 <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <ve ... »

Springboot中使用Redisson实现分布式锁

1. 概述 老话说的好:便宜没好货,有价值的商品,即使再贵,也有人会买。 言归正传,今天继续讨论有关“锁”的话题,synchronized 和 ReentrantLock 大家应该都非常熟悉了,但这两个锁,作用域仅限制于单个Tomcat,如果使用了 Tomcat 集群,这两个锁就不管用了。 此时我们 ... »

Springboot在有锁的情况下如何正确使用事务

1. 概述 老话说的好:想要赚钱,就去看看有钱人有什么需求,因为有钱人钱多,所以赚的多。 言归正传,在Java项目的研发中,“锁”这个词并不陌生,最经典的使用场景是商品的超卖问题。 很多Java小白,通常会认为,给代码加上一把“锁”,就能解决多扣库存问题,却忽略了数据库事务的问题,今天我们就来做一个 ... »

w84422 java

MySQL强人“锁”难《死磕MySQL系列 三》

系列文章 一、原来一条select语句在MySQL是这样执行的《死磕MySQL系列 一》 二、一生挚友redo log、binlog《死磕MySQL系列 二》 前言 最近数据库老是出现下面死锁情况,借着这俩种情况出发详细的理解一下MySQL中的锁。 Lock wait timeout exceede ... »

win7文件夹图标中多了一把小锁打不开文件夹怎么办?

win7文件夹图标中多了一把小锁打不开文件夹怎么办?解决办法一:右击目录→取得管理员权限!该方法适用于win7旗舰版。解决办法二:右击目录→属性→安全→高级→选择everyone→更改权限→勾上完全访 »

liuzhaoyzz

面试官一口气问了MySQL事务、锁和MVCC,我

面试官:你是怎么理解InnoDB引擎中的事务的? 候选者:在我的理解下,事务可以使「一组操作」要么全部成功,要么全部失败 候选者:事务其目的是为了「保证数据最终的一致性」。 候选者:举个例子,我给你发支付宝转了888块红包。那自然我的支付宝余额会扣减888块,你的支付宝余额会增加888块。 候选者: ... »

Java3y

14-Java锁的概述

14-锁的概述 乐观锁与悲观锁 ​ 乐观锁与悲观锁是数据库中引入的名词,但是在并发包里也引入了类似的思想,在这里我们还是有必要需要了解一下。 ​ 悲观锁指数据被外界修改持保守态度,认为数据会很容易被其他线程修改,所以在数据处理前先要对数据进行加锁,在整个数据处理中,使得数据处于锁定状态。悲观锁的实现 ... »

MySQL锁(三)行锁:幻读是什么?如何解决幻读?

概述 前面两篇文章介绍了MySQL的全局锁和表级锁,今天就介绍一下MySQL的行锁。 MySQL的行锁是各个引擎内部实现的,不是所有的引擎支持行锁,例如MyISAM就不支持行锁。 不支持行锁就意味着在 »

liang24

Redis分布式锁-这一篇全了解(Redission实现分布式锁完美方案)

前言 在某些场景中,多个进程必须以互斥的方式独占共享资源,这时用分布式锁是最直接有效的。 随着技术快速发展,数据规模增大,分布式系统越来越普及,一个应用往往会部署在多台机器上(多节点),在有些场景中, »

huangwentian

Zookeeper 分布式锁 (图解+秒懂+史上最全)

文章很长,建议收藏起来,慢慢读! Java 高并发 发烧友社群:疯狂创客圈 奉上以下珍贵的学习资源: 免费赠送 经典图书:《Java高并发核心编程(卷1)》 面试必备 + 大厂必备 +涨薪必备 加尼恩 »

crazymakercircle

Redis分布式锁 (图解-秒懂-史上最全)

文章很长,建议收藏起来,慢慢读! Java 高并发 发烧友社群:疯狂创客圈 奉上以下珍贵的学习资源: 免费赠送 经典图书:《Java高并发核心编程(卷1)》 面试必备 + 大厂必备 +涨薪必备 加尼恩 »

crazymakercircle

【转载】Ubuntu删除或移动带锁文件夹或文件的方法

文件夹右下带锁,说明该文件只能读尔不能操作,要对它进行操作时提示权限不够。 解决方法: sudo chmod -R 777 路径(文件夹或文件) 例如: 执行该条命令后,锁消失。——————————— »

hhxxgdd