《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 zhihu.com/question/36014646 「知乎」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

最近,艿艿在刷知乎的时候,有一个”专业”问题映入我的眼帘:

图片

来源地址:https://www.zhihu.com/question/36014646

这么专业的问题,我一时间竟不知道该如何回答。截至发文时,这个问题已经有40多万的浏览量了。

那么,我们来看看”人在美国,刚下飞机”的知乎大佬们都是怎么回答的呢?

@陈龙

因为要跨平台啊。

如果jvm只有Windows就用360了!当初,SUN在这个问题上纠结了很久,最后发现理念不同。

JAVA是write once,run anywhere。

360是install once,uninstallable forever。

@秋水鸣蛙自一天

360 垃圾清理会清理包括无用的注册表,临时文件,IE的浏览文件等众多垃圾文件,扫描位置多,且受制于磁盘 IO 影响,扫描时间很长,清理速度相对较慢。

如果 Java 使用 360 进行垃圾回收,那用 Java 写的程序都会面临很长的垃圾回收等待时间。比如用 Java 写的网站就会出问题,用户访问网站的时候,网页过个几分钟才出来,那这时候用户早崩溃了,所以不能使用 360 垃圾清理进行 Java 垃圾回收。

@易哥

其实360用来清理Java垃圾是不错的,

但是程序员都不太喜欢用。

因为在运行时,360会一直显示“清理程度超过了35%的JVM。”而且这个数值基于大数据得出,比较有参考性。

于是这个数值,成了事实上的Java程序员考核标准。

于是,面试时,面试官会问“你是多少分的程序员?”

你的虚拟机超过了35%的虚拟机,你就是35分程序员。

你的虚拟机超过了98%的虚拟机,你就是98分程序员。

这对于分数低的程序员是赤裸裸打脸。于是,分低的程序员就不想用360回收垃圾。

渐渐的,凡是用360清理虚拟机垃圾的,都是大神。

于是,在大神之中,超越更多人得到一个高分变得更难。

这就是内卷产生的根本原因。

现在,真正的JAVA高手还是使用360清理虚拟机垃圾的。

而不敢用360清理虚拟机垃圾的程序员,都是垃圾程序员!

@萝魏紫

你都说了,360那都是垃圾清理,我们这是垃圾回收,我们是要弄回来再用的,360给扔了,这根本不对。

@熊熊是只土渐层

「你写的程序打败了全国20%的程序,是否需要清理垃圾?」

对于这个问题,你怎么看?

文章目录
  1. 1. @陈龙
  2. 2. @秋水鸣蛙自一天
  3. 3. @易哥
  4. 4. @萝魏紫
  5. 5. @熊熊是只土渐层