一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

php5.2.0內存管理改進

php5.2.0的內存管理做了較大的改進,某些情況下內存不能釋放的問題不存在了。
測試php腳本(mem.php),我用echo N>>和sleep來控制腳本在某個階段暫停以便檢測狀態。
復制代碼 代碼如下:
<?php 
echo '1>>'; 
sleep(5); 

$o = array(); 
for ($i=0;$i<=100000;$i++) { 
    $o[]='aaaaaaaaaaaaaaaaaaaaa'; 

echo '2>>'; 
sleep(5); 

unset($o); 
echo '3>>'; 
while (true) { 
    echo '..'; 
    sleep(10); 

?> 
監測內存使用情況的bash script(注意:里面的”mem”是取自上面的php腳本名):

while true;do clear;ps au|grep -v "/(vi/|grep/)"|grep "/(mem/|RSS/)";sleep 2;done;
以下是$/usr/local/bin/php mem.php這個進程在三種狀態(數組創建前,數組創建后,數組銷毀后)下,用5.1.6和5.2.0的php(我使用了一樣的configure參數)測試的RSS(內存使用值,單位KB)結果。

php5.1.6:
3164
18076
17572

php5.2.0:
4088
14400
4424
大家可以看到5.1.6這個版本,unset數組之后,內存并沒有從進程里釋放出來,雖然它是可以繼續被這個php進程再利用,但是卻無法被系統的其他進程所使用。而5.2.0則真正釋放出了內存。

大家可能還注意到,在最開始,5.2.0的內存使用比5.1.6多了幾個kb,這是由于5.2.0增加了一些新的東西,這個是很正常的。

另外php5.2.0的內存分配也進行了大的改進,官方的說法是對memory_limit的檢測由每次呼叫emalloc()的時候進行改為直接檢測從系統請求的內存數據塊(blocks)。需要更進一步了解的朋友可以自己去研究代碼。而由于內存分配的實現的更改,內存控制可以更精確地被控制在memory_limit之下,也就是說以前php代碼里,如果有超過了memory_limit的內存使用而沒有出錯的,在php5.2.0里可能會報錯。為了平衡這次改進,php5.2.0的默認的memory_limit由以前的8MB改為了16MB.搜索源代碼可以看到這個修改(find . -name /*c -type f |xargs cat |grep memory_limit)。 

php技術php5.2.0內存管理改進,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 美女视频黄色的免费 | 国语精品91自产拍在线观看二区 | 日韩精品一区二区三区免费视频 | 欧美a色| 国产精品精品 | 亚洲高清中文字幕一区二区三区 | 视频区图片区小说区 | 男人的天堂久久精品激情a 男人进去女人爽免费视频国产 | 久久久久久9 | 91久久国产综合精品女同国语 | 男人进去女人爽免费视频国产 | 亚洲精品国产成人 | 国产精品美女一级在线观看 | 国产一二三四2022精字窝 | 亚洲成人毛片 | 国内精品哆啪啪 | 色网站观看 | 天天干天天操天天干 | 亚洲日本欧美产综合在线 | 国产精品视频免费看 | 国产成人毛片视频不卡在线 | 亚洲小说图片视频 | 狠狠色噜噜狠狠狠狠2021天天 | 韩国三级久久 | 国产精品第1页在线播放 | 久久精品国产91久久综合麻豆自制 | 欧美日韩一二三四区 | 欧美图片另类小说综合 | 国产成人福利美女观看视频 | 国内自拍视频一区二区三区 | 亚洲成人毛片 | 国产成人在线视频 | 91在线视频免费观看 | 成人在线观看视频免费 | 国产91精品露脸国语对白 | 狠狠综合欧美综合欧美色 | 国产原创自拍 | 夜夜未满十八勿进的爽爽影院 | 久久久久久夜精品精品免费啦 | 亚洲免费中文 | 91麻豆精品 |