以前面试的时候,偶尔会被面试官问php的垃圾回收是如何实现的。当时知识有限,只能简单百度一下,然后从源码理解一下php的垃圾回收,当php识别到一个内容不再被用之后,就会回收。后来一个偶然的机会,本人要从事一些java相关的工作,后来面试也想过面试java方面的内容,发现java对垃圾回收这块非常重视,经常有大蝙蝠文章介绍java垃圾回收的原理,本人一直对此不甚明白,为何同样是编程语言,为何大家的侧重点差异如此大。
直到最近,公司需要开发一些占用内存非常严重的php程序,然后本人才明白。php作为一种不长驻内存的语言,它的应用,往往是简单的重复应用,后面的经常覆盖前面的内存,等于变相清除了垃圾内存,又或者是网页访问的一次性请求,然后立刻销毁,所以php对内存的使用其实天然就有自我清除垃圾的功能。而java在web中,如果不及时销毁垃圾内存,那么垃圾就可以长久的驻留在内存里面,久而久之,很容易就会内存溢出。两种语言的实现方案,导致他们对垃圾内存的重视程度不一样。个人感觉很多面试官都不甚明白,只是依据自己对it行业的理解然后顺口问问这方面的内容。只有同时对两种不同语言熟悉的人,才能体会到其中的不同。
当前标题:论php垃圾回收为何不受重视
本文链接:
http://chengdu.cdxwcx.cn/article/jiposs.html