查看原文
其他

笑哭!Java 为什么不采用 360 垃圾清理来进行垃圾回收呢?

点击关注 👉 Java面试那些事儿 2021-09-05

大家好,我是D哥

点击关注下方公众号,Java面试资料 都在这里

来源: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%的程序,是否需要清理垃圾?」


对于这个问题,你怎么看?欢迎在留言区讨论~



热门推荐:


简历&面试题&视频资料获取 


扫描下方二维码,回复关键字【 java


: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存