惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Tenable Blog
Last Week in AI
Last Week in AI
P
Proofpoint News Feed
Engineering at Meta
Engineering at Meta
H
Help Net Security
F
Fortinet All Blogs
MyScale Blog
MyScale Blog
宝玉的分享
宝玉的分享
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 司徒正美
量子位
N
Netflix TechBlog - Medium
Apple Machine Learning Research
Apple Machine Learning Research
小众软件
小众软件
Recorded Future
Recorded Future
博客园 - 三生石上(FineUI控件)
Vercel News
Vercel News
aimingoo的专栏
aimingoo的专栏
I
InfoQ
Microsoft Security Blog
Microsoft Security Blog
Scott Helme
Scott Helme
The Last Watchdog
The Last Watchdog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
IT之家
IT之家
AI
AI
WordPress大学
WordPress大学
Security Archives - TechRepublic
Security Archives - TechRepublic
Google Online Security Blog
Google Online Security Blog
U
Unit 42
V2EX - 技术
V2EX - 技术
MongoDB | Blog
MongoDB | Blog
Schneier on Security
Schneier on Security
博客园 - Franky
H
Heimdal Security Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Jina AI
Jina AI
W
WeLiveSecurity
P
Privacy & Cybersecurity Law Blog
Cloudbric
Cloudbric
B
Blog RSS Feed
N
News | PayPal Newsroom
S
Securelist
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
I
Intezer
Hacker News - Newest:
Hacker News - Newest: "LLM"
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
博客园_首页
罗磊的独立博客
H
Hackread – Cybersecurity News, Data Breaches, AI and More
雷峰网
雷峰网

博客园 - 那只狐狸

线程与GC 神奇的Task.WaitALl Redis的淘汰策略 压测工具k6 C#的Lock可以锁什么? SqlServer高性能批量插入 二叉树 二叉搜索树 AVL树 红黑树 线上bug线下很难重现时的一次处理 自动化测试和联调的工具---apifox 事务管理思考 sleep、yield、wait的区别 线程异常 线程 JAVA线程中断 volatile synchronized在线程安全上的区别 jms amqp activemq rabbitmq的区别 servlet不是线程安全的 雪花算法 mysql在海量数据时的处理方案
关于GC
那只狐狸 · 2022-11-05 · via 博客园 - 那只狐狸

1.内存处理的判定指标:内存效率、内存利用率、内存整齐度;也是各种内存回收算法的指标

2.对象是否有存活必要的判定

2.1 引用计数。因为效率低、存在循环引用的问题(A引用B、B引用A 但是其他类都不引用A和B),已淘汰

2.2根搜索算法。从GCRoots根对象开始找引用的对象--->形成引用链,不在引用链上的不可用。GCRoots有

2.2.1虚拟机栈引用的对象

2.2.3方法区静态属性引用的对象

2.2.4方法区常量引用的对象

2.2.5方法栈中原生方法引用的对象

2.3 GC去哪儿找GCRoots?JIT编译器(因为运行时代码都是他生成的 它最熟悉)、GCHandler(被非托管对象引用的对象)、终结器队列

3.GC算法现在普遍使用分代收集法,不同的代使用不同的内存区域,不同的代使用下边不同的活法(年轻的跑来跑去 年老的原地不动)。对象按照大小被分配到不同的代,对象按照是否有存活的必要来决定年龄要不要继续长一岁,对象按照年龄在不同的代中移动

3.1 复制算法

3.2 标记清除法

3.3 标记整理法

对象在内存中漂泊、生生死死,侩子手是GC,DNA是代码,硬盘是睡觉的床,cpu是欲望,一台计算机一个世界,网线是时光机,而造物主就是写代码的人----程序员,,对象 你要不要来陪我吃饭?