最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php5.2.0內(nèi)存管理改進

 更新時間:2007年01月22日 00:00:00   作者:  
php5.2.0的內(nèi)存管理做了較大的改進,某些情況下內(nèi)存不能釋放的問題不存在了。
測試php腳本(mem.php),我用echo N>>和sleep來控制腳本在某個階段暫停以便檢測狀態(tài)。
復(fù)制代碼 代碼如下:

<?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); 

?> 
監(jiān)測內(nèi)存使用情況的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這個進程在三種狀態(tài)(數(shù)組創(chuàng)建前,數(shù)組創(chuàng)建后,數(shù)組銷毀后)下,用5.1.6和5.2.0的PHP(我使用了一樣的configure參數(shù))測試的RSS(內(nèi)存使用值,單位KB)結(jié)果。

php5.1.6:
3164
18076
17572

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

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

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

相關(guān)文章

  • 詳解WordPress中創(chuàng)建和添加過濾器的相關(guān)PHP函數(shù)

    詳解WordPress中創(chuàng)建和添加過濾器的相關(guān)PHP函數(shù)

    這篇文章主要介紹了WordPress中創(chuàng)建和添加過濾器的相關(guān)PHP函數(shù),分別是apply_filters()函數(shù)和add_filter()函數(shù)的使用,需要的朋友可以參考下
    2015-12-12
  • PHP實現(xiàn)的簡單AES加密解密算法實例

    PHP實現(xiàn)的簡單AES加密解密算法實例

    這篇文章主要介紹了PHP實現(xiàn)的簡單AES加密解密算法,結(jié)合具體實例形式分析了php基于mcrypt_encrypt、bin2hex、mcrypt_decrypt等方法進行字符串加密解密的相關(guān)操作技巧,需要的朋友可以參考下
    2017-05-05
  • PHP平滑關(guān)閉/重啟的實現(xiàn)方法

    PHP平滑關(guān)閉/重啟的實現(xiàn)方法

    "平滑重啟"和"快速重啟"是兩種不同的概念,下面這篇文章主要給大家介紹了關(guān)于PHP平滑關(guān)閉/重啟的實現(xiàn)方法,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-05-05
  • PHP設(shè)計模式 注冊表模式(多個類的注冊)

    PHP設(shè)計模式 注冊表模式(多個類的注冊)

    注冊表模式其實是一個單例模式,注冊表類提供靜態(tài)方法(或單例對象的實例化方法)來讓其它對象訪問其中的數(shù)據(jù)(通常是對象)。整個系統(tǒng)中的每個對象都可以訪問這些數(shù)據(jù)對象
    2012-02-02
  • PHP連接MongoDB示例代碼

    PHP連接MongoDB示例代碼

    這里采用默認連接本機的27017端口,當然你也可以連接遠程主機如192.168.0.4:27017,如果端口是27017,端口可以省略
    2012-09-09
  • discuz程序的PHP加密函數(shù)原理分析

    discuz程序的PHP加密函數(shù)原理分析

    康盛的 authcode 函數(shù)可以說對中國的PHP界作出了重大貢獻。包括康盛自己的產(chǎn)品,以及大部分中國使用PHP的公司都用這個函數(shù)進行加密,authcode 是使用異或運算進行加密和解密。
    2011-08-08
  • php下將XML轉(zhuǎn)換為數(shù)組

    php下將XML轉(zhuǎn)換為數(shù)組

    PHP XML To Array,將XML轉(zhuǎn)換為數(shù)組,需要的朋友可以參考下。
    2010-01-01
  • php實現(xiàn)的簡單檢驗登陸類

    php實現(xiàn)的簡單檢驗登陸類

    這篇文章主要介紹了php實現(xiàn)的簡單檢驗登陸類,可實現(xiàn)基本的php數(shù)據(jù)庫查詢及密碼匹配的功能,需要的朋友可以參考下
    2015-06-06
  • PHP生成可點擊刷新的驗證碼簡單示例

    PHP生成可點擊刷新的驗證碼簡單示例

    這篇文章主要介紹了PHP生成可點擊刷新的驗證碼,結(jié)合簡單實例形式分析了php驗證碼的實現(xiàn)與調(diào)用顯示方法,涉及js動態(tài)調(diào)用驗證碼php文件的相關(guān)技巧,需要的朋友可以參考下
    2016-05-05
  • php魔術(shù)函數(shù)__call()用法實例分析

    php魔術(shù)函數(shù)__call()用法實例分析

    這篇文章主要介紹了php魔術(shù)函數(shù)__call()用法,實例分析了__call()函數(shù)的功能及使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-02-02

最新評論

澜沧| 敦化市| 正宁县| 景泰县| 滨海县| 阿合奇县| 商水县| 石阡县| 中方县| 英德市| 呼和浩特市| 合阳县| 南郑县| 龙山县| 盘锦市| 于田县| 仁怀市| 如皋市| 陕西省| 淳安县| 航空| 开平市| 双牌县| 克山县| 安阳市| 富川| 佛学| 杭锦后旗| 四会市| 大方县| 斗六市| 灵石县| 龙井市| 长宁区| 崇明县| 林西县| 临沧市| 大关县| 巴东县| 正镶白旗| 晋宁县|