首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
JAVA
订阅
海峰Ricky
更多收藏集
微信扫码分享
微信
新浪微博
QQ
14篇文章 · 0订阅
漫画:高并发下的HashMap
这一期我们来讲解高并发环境下,HashMap可能出现的致命问题。 HashMap的容量是有限的。当经过多次元素插入,使得HashMap达到一定饱和度时,Key映射位置发生冲突的几率会逐渐提高。 这时候,HashMap需要扩展它的长度,也就是进行Resize。 HashMap的当…
让人头大的各种锁,从这里让你思绪清晰
个人博客个人博客这次我们来看锁说到了锁我们经常会联想到生活中的锁,在我们日常中我们经常会接触到锁。比如我们的手机锁,电脑锁,再比如我们生活中的门锁,这些都是锁。锁有什么作用呢?说了这么多还是不清楚锁到
推荐收藏系列:一文理解JVM虚拟机(内存、垃圾回收、性能优化)解决面试中遇到问题
一. JVM内存区域的划分 JVM栈(Java Virtual Machine Stacks): Java中一个线程就会相应有一个线程栈与之对应,因为不同的线程执行逻辑有所不同,因此需要一个独立的线程栈,因此栈存储的信息都是跟当前线程(或程序)相关信息的,包括局部变量、程序运行…
关于 JVM,都有哪些面试最常考的点需要重点掌握?
这里仅仅记录了一些笔者认为需要重点掌握的 JVM 知识点,如果你想更加全面地了解 JVM 底层原理,可以阅读周志明老师《深入理解Java虚拟机——JVM高级特性与最佳实践(第2版)》全书。 JDK 1.8 同 JDK 1.7 比,最大的差别就是:元数据区取代了永久代。元空间的本…
魔鬼在细节,理解Java并发底层之AQS实现
公平锁:多个线程采用先到先得的公平方式竞争锁。每次加锁前都会检查等待队列里面有没有线程排队,没有才会尝试获取锁。 非公平锁:当一个线程采用非公平的方式获取锁时,该线程会首先去尝试获取锁而不是等待。如果没有获取成功,才会进入等待队列 CANCELLED(1):表示当前节点已取消调…
java并发编程系列:牛逼的AQS(上)
设计java的大叔们为了我们方便的自定义各种同步工具,为我们提供了大杀器AbstractQueuedSynchronizer类,这是一个抽象类,以下我们会简称AQS,翻译成中文就是抽象队列同步器。这家伙老有用了,封装了各种底层的同步细节,我们程序员想自定义自己的同步工具的时候,…
理解Java内存模型
最近重新学习一遍《深入学习Java虚拟机》,把之前Java内存模型中模糊的知识重新梳理一遍,这篇文章主要介绍模型产生的问题背景,解决的问题,处理思路,相关实现规则,环环相扣,希望读者看完这篇文章后能对Java内存模型体系产生一个相对清晰的理解,知其然而知其所以然。 在介绍Jav…
【Java杂货铺】JVM#Java高墙之内存模型
《深入理解Java虚拟机》,学习JVM的经典著作,几乎学习JAVA的小伙伴人手一本。当初买了,翻看了一部分,到了字节码那边彻底读不下去了,遂弃之。最近打算看Spring源码,反射、动态代理、设计模式等基础工具的确可以让我更加容易理解源码内容。然而,看着看着才发现,这个平常我们几…
面试并发volatile关键字时,我们应该具备哪些谈资?
线程 B 读一个 volatile 变量,实质上是线程 B 接收了之前某个线程发出的(在写这个 volatile 变量之前对共享变量所做修改的)消息。 线程 A 写一个 volatile 变量, 随后线程 B 读这个 volatile 变量, 这个过程实质上是线程 A 通过主内…
java并发之Condition
在没有 Lock 之前,我们使用 synchronized 来控制同步,配合 Object 的 #wait()、#notify() 等一系列方法可以实现等待 / 通知模式。 在 Java SE 5 后,Java 提供了 Lock 接口,相对于 synchronized 而言,L…