首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java高并发系列
订阅
朱文进
更多收藏集
微信扫码分享
微信
新浪微博
QQ
24篇文章 · 0订阅
什么是线程、并发-J.U.C并发系列(2)
回顾上一篇的文章,我们主要介绍了现代计算机模型,CPU的缓存一致性协议,CPU和内存的工作原理,这些知识点都是为了更好的去学习我们的Java并发编程。 现代操作系统在运行一个程序时,会为其创建一个进程。例如,启动一个Java程序、网页、软件应用等,操作系统就会创建一个进程。现代…
JVM源码分析之Attach机制实现完全解读
大家是否注意过上面圈起来的两个线程,”Attach Listener”和“Signal Dispatcher”,这两个线程是我们这次要讲的Attach机制的关键,先偷偷告诉各位,其实Attach Listener这个线程在jvm起来的时候可能并没有的,后面会细说。 后面是命令对…
java线程实现方式
各个线程既可以共享进程资源(内存地址、文件I/O等),又可以独立调度(线程是CPU调度的基本单位)。 每个已经执行start()且还未结束的java.lang.Thread类的实例就代表了一个线程。Thread的所有关键方法都是声明为Native的。在Java API中,一个N…
Disruptor源码解析 + 实战
1:从上图可以看出,juc下的队列基本采用加锁方式保证线程安全。通过不加锁的方式实现的队列都是无界的(无法保证队列的长度在限定的范围)。而加锁的方式可以实现有界队列。在稳定性要求特别高的系统中,为了防止生产者速度过快,导致内存溢出,只能选择有界队列。 2:加锁的方式通常严重影响…
Java 垃圾回收算法之G1[精品长文]
G1(Garbage-First)回收器是在JDK1.7中正式使用的全新垃圾回收器,G1拥有独特的垃圾回收策略,从分代上看,G1依然属于分代垃圾回收器,它会区分年代和老年代,依然有eden和survivor区,但从堆的结构上看,它并不要求整个eden区、年清代或者老年代都连续。…
一次 JVM FullGC 的排查过程及解决方案!
也就是 FullGC 触发的原因是因为Metaspace大小达到了GC阈值。在监控系统里面看了一下Metaspace的大小变化趋势,如下图所示: 按照以往的经验,Metaspace在系统稳定运行一段时间后占用空间应该比较稳定才对,但是从上图来看,Metaspace显然是呈现大幅…
Java并发(7)- 你真的了解 ReentrantReadWriteLock 吗?
在前几篇文章中了解了ReentrantLock、Semaphore与CountDownLatch后,J.U.C包中基于AQS实现的并发工具类还剩一个比较重要的:读写锁ReentrantReadWriteLock。读写锁在Java面试过程中是一个经常性考的题目,他涉及到的知识点比…
有的线程它死了,于是它变成一道面试题
这次的文章,要从一次阿里巴巴的面试说起。 我记得那天是周一,刚刚经历过周末过的放松,干劲十足的我正在键盘上疯狂的输出。这时,我的手机响了起来,拿起一看,是来自杭州的电话,心想这次是要给我推荐股票呢还是要让我贷款呢。我接起了电话,准备调戏一番。那边响起一个声音:"你好,请问是xx…
JVM GC 之「AdaptiveSizePolicy」实战
一个由 AdaptiveSizePolicy 引发的 GC 问题。从定位问题,解决问题到源码分析,实战了解 AdaptiveSizePolicy。