2022年3月4日

摘要: https://mp.weixin.qq.com/s?__biz=MzIxNTQ3NDMzMw==&mid=2247483670&idx=1&sn=751d84d0ce50d64934d636014abe2023&chksm=979688e4a0e101f2a51d1f06ec75e25c56f89 阅读全文
posted @ 2022-03-04 22:53 云中哥 阅读(11) 评论(0) 推荐(0) 编辑

2022年3月3日

摘要: 阅读全文
posted @ 2022-03-03 13:41 云中哥 阅读(9) 评论(0) 推荐(0) 编辑
摘要: CyclicBarrier内部是通过条件队列trip来对线程进行阻塞的,并且其内部维护了两个int型的变量parties和count,parties表示每次拦截的线程数,该值在构造时进行赋值。count是内部计数器,它的初始值和parties相同,以后随着每次await方法的调用而减1,直到减为0就 阅读全文
posted @ 2022-03-03 13:08 云中哥 阅读(41) 评论(0) 推荐(0) 编辑
摘要: CountDownLatch在多线程同步中,通过维护count变量并保证其原子性操作,并通过countDown方法和await()两个方法实现同步功能,首先通过建立CountDownLatch对象,并且传入参数为count的初始值。如果一个线程调用await调用方法,那么线程便进入阻塞,并阻塞队列。 阅读全文
posted @ 2022-03-03 13:07 云中哥 阅读(47) 评论(0) 推荐(0) 编辑

2022年3月2日

摘要: concurrentHashMap为什么可以提高并发行?ConcurrentHashMap使用索分段技术,将数据存储分成一段一段,然后给每一段配上一把索,当一个线程占用锁访问其中一个段数据的时候,其他段数据还可以被访问。 ConcurrentHashMap 锁机制具体分析(JDK 1.7 VS JD 阅读全文
posted @ 2022-03-02 23:57 云中哥 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 1.适用top命令查询进程的cpu,内存状态情况 2.使用jstack查看一个进程中,线程的状态导出 3.使用top 23 -h 查看相应的线程cpu,内存使用情况 4. 死锁的信息都在最下面 阅读全文
posted @ 2022-03-02 23:06 云中哥 阅读(25) 评论(0) 推荐(0) 编辑
摘要: https://www.pudn.com/news/62c28a9c502ed3121a892438.html Spring 控制反转IOC 控制反转IOC: Inversion of Control 是一种解耦设计原则 主要目的是借助第三方,比如Spring IOC容器实现具有依赖关系的对象之间的 阅读全文
posted @ 2022-03-02 22:26 云中哥 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2022-03-02 22:22 云中哥 阅读(6) 评论(0) 推荐(0) 编辑
摘要: G1垃圾回收器是基于标记整理算法实现,不会产生内存碎片,G1不同于其他的收集器,G1的回收范围是整个Java堆,而其他收集器仅限于新生代和老年代。 与此同时为适应不断扩大的内存和不断增加,降低暂停时间,提高吞吐量。 官方的目标设定在延迟可控的情况下获得尽可能高的吞吐量。 G1是一个并行的回收器,他将 阅读全文
posted @ 2022-03-02 15:41 云中哥 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 收集过程: 1.初始标记阶段:所用的用户线程都会短暂停顿,主要任务是标记GC ROOT能够直接关联到对象,一旦标记完成后就会恢复之前的用户线程,由于直接关联的对象比较少,恢复比较快。 2.并发标记阶段:从GC ROOTS直接关联的对象开始遍历整个对象图,标记处全部的垃圾对象,耗时比较长,但是这个过程 阅读全文
posted @ 2022-03-02 14:43 云中哥 阅读(66) 评论(0) 推荐(0) 编辑

导航