标签:synchronized

JAVA

为什么从Java15开始要禁用偏向锁了?

herman 2年前 (2022-08-31) 3854浏览

背景 为什么从Java15开始要禁用偏向锁了? 在 JDK1.5 之前,面对 Java 并发问题, synchronized 是一招鲜的解决方案: 普通同步方法,锁上当前实例对象静态同步方法,锁上当前类 Class 对象同步块,锁...

JAVA

如何保证LinkedHashMap以及它实现LRU缓存线程安全

herman 3年前 (2021-08-09) 3070浏览

本文首发于我的个人公众号“业余草”,由于公众号不利于搜索,这里同步到我的个人网站上。 昨天有一位网友对我的一篇文章进行了评论,留言说到:线程安全的 LinkedHashMap 怎么实现? 线程安全的 LinkedHashMap 我...

JAVA

volatile可见性原理最强总结

herman 5年前 (2020-01-11) 2811浏览

最近看到一篇很好的 volatile 可见性原理总结,分享给大家! volatile 是一种轻量且在有限的条件下线程安全技术,它保证修饰的变量的可见性和有序性,但非原子性。相对于 synchronize 高效,而常常跟 synchronize...

JAVA

从 ReentrantReadWriteLock 说独享锁(排他锁)与共享锁

herman 6年前 (2018-11-22) 3654浏览

阅读前面的文章,我们知道 ReentrantLock 是一个高效的锁,它既能用作公平锁,又能用作非公平锁!但是有了 ReentrantLock 后,为什么还需要 ReentrantReadWriteLock 呢? 那就需要从排他锁和共享锁说...

JAVA

图解 Java 中的可重入锁与非可重入锁

herman 6年前 (2018-11-22) 3017浏览

写锁呢就不可避免的要说可重入锁与不可重入锁。不可重入锁也有人成为非可重入锁,都是一个意思,不同的叫法而已! 前面我有篇文章《synchronized 是可重入锁吗?为什么?》写过 synchronized,今天我们再来借助 syn...

JAVA

Java 中的无锁、偏向锁、轻量级锁、重量级锁!

herman 6年前 (2018-11-21) 3436浏览

最近一段时间,有人微信私信我说:“看我的文章,喜欢每天都进步的感觉!”把我高兴坏了!还有人经常打赏我,我在这里感谢他(她)们! 每收到一份打赏、赞美、评论、留言等都是满满的幸福。再次感谢大家的认可和支持! ...

JAVA

Vector 真的线程安全的吗?

herman 6年前 (2018-11-08) 5034浏览

你还在面试中回答 Vector 是线程安全的吗?我相信很多人在面试中都是这样回答的,它是线程安全的。关于 Vector 我们今天来重新认识它! 如果你说 Vector 是线程安全的,一定是基于它的方法 synchronized 关...

JAVA

什么是线程安全?

herman 6年前 (2018-11-04) 2524浏览

先说一下,我为什么要写这篇文章!因为有位网友给我发了一篇关于AtomicInteger的文章:https://blog.csdn.net/fanrenxiang/article/details/80623884,说看不懂。我看了这篇文章,我说看不...

JAVA

java 中的锁池(monitor)和等待池(waitset)

herman 6年前 (2018-10-31) 8366浏览

程序就是模仿世界!比如队列就是模仿人们的排队场景,再比如工厂模式,代理模式等都是和现实生活息息相关的场景衍生而来。在前面还记得我们的 synchronized 锁吗?还记得 Object 的 wait 方法吗?它们分别有各自的池,及:锁...

JAVA

synchronized 是可重入锁吗?为什么?

herman 6年前 (2018-10-12) 9832浏览

最近有人私信我,说面试中问到了 synchronized,被批的一塌糊涂,挂了!Why?他说其中一个问题,问他 synchronized 是可重入锁吗?他说不是!为什么不是,他说 java 中有 ReentrantLock,R...

JAVA

教你使用数据库的悲观锁 for update 创建分布式锁

herman 6年前 (2018-09-17) 4789浏览 0评论

锁不管是在工作中还是生活中都到处存在。在编程的世界中,也是普遍的存在,用不好,会产生很多麻烦问题。 前两天有一个网友在群里问我 synchronized 锁的问题,当时没怎么细说,以后有时间了来写篇文章。本文主要是介绍借用数据库的悲观锁来实...