- 博客(8)
- 收藏
- 关注
原创 JDK Tools
但是,很多时候内存泄漏的现象不是很明显,比如内部类、Handler相关的使用导致的内存泄漏,或者你使用了第三方library的一些引用,比较消耗资源,但又不是像系统资源那样会引起你足够的注意去手动释放它们。上面的-d表示的是持续时长,后面60代表持续采集时间60s,-o表示的是采集规范,这里用的是collapsed,-f后面的路径,表示的是数据采集后生成的数据存放的文件路径(这里放在了/tmp/test_01.txt),${pid}表示的是采集目标进程的pid,回车运行,运行期间阻塞,知道约定时间完成。
2025-03-03 10:22:21
820
原创 GC日志和GC场景
正常情况进行的 Background CMS GC,出现问题基本都集中在 Reference 和 Class 等元数据处理上,在 Reference 类的问题处理方面,不管是 FinalReference,还是 SoftReference、WeakReference 核心的手段就是找准时机 dump快照,然后用内存分析工具来分析。如果在观察 Old 区前后比例变化的过程中,发现可以回收的比例非常小,如从 80% 只回收到了 60%,说明我们大部分对象都是存活的,Old 区的空间可以适当调大些。
2025-02-08 09:35:53
878
原创 DeepSeek从入门到精通
1.什么是deepseek?DeepSeek是一款国产 AI 工具,不仅能够帮助我们解决日常问题,还能在工作和学习中提供极大的帮助,相比其他同类工具,无论推理能力、文字处理能力、思考能力、还是框架构建能力都更强大,重点是,免费。与传统 AI 应用不同,DeepSeek 采用了独特的算法和模型架构,这使得它在回应速度和内容质量上都有了极大的提升。例如,在处理复杂的问题时,DeepSeek 能够快速分析问题的关键要点,调动其学习到的知识储备,给出准确、详细且富有逻辑的回答。的核心功能有哪些。
2025-02-07 16:51:44
917
原创 GC垃圾收集器
在垃圾收集器的体系中,按照分代收集和分区收集的分类方式,不同的收集器有着各自的特点和适用场景。分代收集器基于对象的存活周期不同,将堆内存划分为不同的代,针对各代特点采用不同的回收算法。分区收集器将堆内存划分为多个独立的区域(分区),可以独立管理和回收这些分区。
2025-02-07 09:42:54
786
原创 GC(垃圾回收)
引用计数法(Reference Count)会给对象中添加一个引用计数器,每当有一个地方引用它的时候,计数器的值就 +1 ,当引用失效时,计数器值就 -1 ,计数器的值为 0 的对象不可能在被使用,这个时候就可以判定这个对象是垃圾。图中的 object5 和object6 虽然他们之间互相引用了,但是从根找不到它,所以就是垃圾,而object8没有任何引用自然而然也是垃圾,其他的Object对象都有可以从根找到的,所以是有用的,不会被垃圾回收掉。绿色的代表 GC Roots,红色的代表可以追溯到的对象。
2025-02-06 11:29:44
914
原创 java虚拟机
Happens-Before” 关系是一种在并发环境中定义操作之间顺序的规则。它用于确定在一个线程中的操作对于另一个线程中的操作是否可见,以及操作的执行顺序是否有保障。简单来说,如果操作 A Happens-Before 操作 B,那么操作 A 的结果对于操作 B 是可见的,并且操作 A 在操作 B 之前执行。
2025-01-24 15:36:03
845
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人