久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

瀏覽:2日期:2022-09-14 08:17:11

前日,github的PHP板塊驚現(xiàn)一段能夠提升70%運行效率的代碼,引發(fā)了全世界眾多網(wǎng)友的吐槽和調(diào)侃,“awesome!”、“well done!”、“PHP是世界第一語言!”平時不茍言笑,埋頭苦干的程序員們充分發(fā)揮了其幽默的一面,github成為了歡樂的海洋。

先來看看這一段神級的代碼:

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

這段代碼所做的就是一件事情:禁用PHP的垃圾回收器。然后網(wǎng)友測試在使用禁用PHP的垃圾回收器后帶來的效果就是:

Before: Memory usage: 163.66MB (peak: 403.82MB), time: 246.25sAfter: Memory usage: 163.34MB (peak: 350.36MB), time: 99.55s某個PHP程序運行所需時間從246.25秒降低到99.55秒!

Before: Memory usage: 152.71MB (peak: 335.9MB), time: 195.99sAfter: Memory usage: 164MB (peak: 308.02MB), time: 104.06s某個PHP程序運行所需時間從195.99秒降低到104.06秒!

……

總的說來,就是禁用垃圾回收器可以提升PHP70%運行效率。

既然,PHP的垃圾回收如此不靠譜,那么它以前設(shè)計的初衷是什么呢?

因為在C/C++中,內(nèi)存管理是一件很麻煩的事情,內(nèi)存的使用和釋放都需要程序員編寫程序手動操作,如果有所遺漏,就可能造成資源浪費甚至內(nèi)存泄露。因此PHP在設(shè)計的時候為了規(guī)避這個問題,引入了垃圾回收器來用于自動釋放無用對象的內(nèi)存。

值得一提的是PHP在運行循環(huán)回收算法的時候,會產(chǎn)生額外的時間消耗。雖然在較小的項目中,這種額外消耗微乎其微,但是當(dāng)運行大項目時,由于同時啟動了多個循環(huán)回收的線程,這種消耗將會產(chǎn)生很大的影響,最直觀的表現(xiàn)就是程序運行時間變長了。

禁用PHP的垃圾回收,是提高程序運行效率的最簡單粗暴的方式。這就如同腿腳受傷了,最簡單的方式就是截肢一樣。

當(dāng)該神級代碼一公布,github的程序員們便樂開了花:

首先到來的homm表達了對這種處理方式的驚訝以及不明白為什么要這么做,并客觀評價了這個處理方式看起來并不好:

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

接著到來的smileytechguy便開始調(diào)侃了:“恩,沒有注釋,讓我們把PHP的內(nèi)核禁用了吧,我們也不會解釋為什么這樣做的?!?/p>

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

然后就開始一發(fā)不可收拾了:

有打醬油的:

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

有吐槽和調(diào)侃的:

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

光是說PHP是世界第一語言的就有幾個國家的版本,話說只用幾段代碼就能提高70%效率,PHP世界第一語言當(dāng)之無愧:

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

還有賣萌的:

Github歡樂多 PHP神級代碼引發(fā)吐槽熱

PHP的垃圾回收機制成為大家的笑料,我們也很清楚簡單的禁用PHP垃圾回收并不能解決內(nèi)存溢出等問題,PHP未來如何處理好內(nèi)存管理與運行效率之間的矛盾將是一件任重而道遠的事情。

via:evget

標簽: PHP
相關(guān)文章:
主站蜘蛛池模板: 浦北县| 同仁县| 师宗县| 绿春县| 重庆市| 山丹县| 左权县| 荆门市| 汉阴县| 凌云县| 黑龙江省| 巴彦淖尔市| 邯郸市| 芷江| 茶陵县| 临邑县| 丰镇市| 靖西县| 鄯善县| 双峰县| 静宁县| 出国| 临江市| 来宾市| 茌平县| 蓬莱市| 霸州市| 阜宁县| 建宁县| 盐亭县| 洪雅县| 桂林市| 东安县| 会理县| 五指山市| 桐柏县| 临漳县| 金昌市| 铜山县| 屯留县| 思南县|