谈谈悲观锁

news/2024/5/20 8:11:10 标签: java, 数据库, 开发语言, JUC

谈谈悲观锁
乐观锁,悲观锁,并不是特指什么具体的锁,而是一种策略,思想。
悲观锁就是比较悲观,认为自己使用数据的时候,一定会有其他线程来修改数据,所以在获取数据的时候,会先加锁,确保数据不会被其他线程修改。
悲观锁的实现:
● Synchronized 关键字
● Lock 接口的实现类,比如 ReentrantLock
像乐观锁适用于写比较少的情况下,即冲突真的很少发生的时候,这样可以省去锁的开销,加大了系统的整个吞吐量。但如果经常产生冲突,上层应用会不断的进行重试,这样反倒是降低了性能,所以这种情况下用悲观锁就比较合适。


http://www.niftyadmin.cn/n/5104132.html

相关文章

短视频是“风口”还是“疯口”?

熟悉我的粉丝都知道,最近去追了下短视频的风口,折腾了几个视频出来。且不说视频效果如何,单单是制作视频的过程,就差点没要了童话的老命。看似短短的几分钟,真的应了那句话:台上一分钟,台下十年…

Intelijj使用Gitee团队开发

初始化项目到Gitee服务器 成功标识: 添加团队成员 点击管理——仓库成员设置——开发者 2.添加仓库成员 (最多不超过5人) 3.通过链接或者二维码邀请新成员,或者可以自己手动添加新成员并提交 多人项目仓库创建完成 通…

八大排序代码——总结

稳定排序有:插入排序、冒泡排序、归并排序、基数排序 (基冒插归) 不稳定排序有:选择排序、快速排序、希尔排序、堆排序 (快选希堆) 默认从小到大排序 插入排序 O(n^2) 稳定 void insertSort(int a[], int …

【会议征稿通知】第三届大数据经济与数字化管理国际学术会议(BDEDM 2024)

2024 3rd International Conference on Big Data Economy and Digital Management 第三届大数据经济与数字化管理国际学术会议(BDEDM 2024) 第三届大数据经济与数字化管理国际学术会议(BDEDM 2024)将于2024年1月12-14日于宁波召…

fastdds源码编译安装

如何根据源码编译 fastdds 如何根据源码编译 fastdds 这里是为了根据源码编译一个 fastdds 。 fastdds 依赖 fastcdr Asio TinyXMl2 下载 fastdds 源码 git clone gitgithub.com:eProsima/Fast-DDS.git 进入 下载好的 fastdds 中执行 git submodule update --init --recurs…

Stable Diffusion WebUI报错RuntimeError: Torch is not able to use GPU解决办法

新手在安装玩Stable Diffusion WebUI之后会遇到各种问题, 接下来会慢慢和你讲解如何解决这些问题。 在我们打开Stable Diffusion WebUI时会报错如下: RuntimeError: Torch is not able to use GPU;add --skip-torch-cuda-test to COMMANDL…

写给正在互联网经历孤独和迷茫的你

这篇文章写给正在互联网上经历孤独和迷茫,失去信心和希望的人们。 最近有不少公众号粉丝跟我倒苦水,问这两年互联网怎么这么难,干啥啥不成,都快对互联网完全失去信心了。童话觉得为了大家的心病专门来开开方子很有必要&#xff0c…

Leetcode 349 两个数组的交集 (*哈希数组,*HashSet,*HashMap)

Leetcode 349 两个数组的交集 (*哈希数组,*HashSet,*HashMap) 解法1 [用数组构建hashmap] 😋HashSet and .HashMap1.HashSet2.HashMap 解法2 [使用HashSet]⭐️ 解法1 [用数组构建hashmap] 😋 自己的笨比方…