久草视频2-久草视-久草社区视频-久草色在线-久草色视频-久草软件

各版本PHP的垃圾回收算法 | 張大奮的個人IT技術博客

我是創始人李巖:很抱歉!給自己產品做個廣告,點擊進來看看。  

摘要:垃圾回收算法在JAVA和.NET中早已是司空見慣的事情了,然后,PHP作為一門托管語言也有自己的垃圾回收算法,本文就PHP5.2和PHP5.3版本來詳細解說一下PHP的垃圾回收算法演變。

PHP是一門托管型語言,在PHP編程中程序員不需要手工處理內存資源的分配與釋放(使用C編寫PHP或Zend擴展除外),這就意味著PHP本身實現了垃圾回收機制(Garbage Collection)。現在如果去PHP官方網站(php.net)可以看到,目前PHP5的兩個分支版本PHP5.2和PHP5.3是分別更新的,這是因為許多項目仍然使用5.2版本的PHP,而5.3版本對5.2并不是完全兼容。PHP5.3在PHP5.2的基礎上做了諸多改進,其中垃圾回收算法就屬于一個比較大的改變。本文將分別討論PHP5.2和PHP5.3的垃圾回收機制,并討論這種演化和改進對于程序員編寫PHP的影響以及要注意的問題。

PHP變量及關聯內存對象的內部表示

垃圾回收說到底是對變量及其所關聯內存對象的操作,所以在討論PHP的垃圾回收機制之前,先簡要介紹PHP中變量及其內存對象的內部表示(其C源代碼中的表示)。

PHP官方文檔中將PHP中的變量劃分為兩類:標量類型和復雜類型。標量類型包括布爾型、整型、浮點型和字符串;復雜類型包括數組、對象和資源;還有一個NULL比較特殊,它不劃分為任何類型,而是單獨成為一類。

所有這些類型,在PHP內部統一用一個叫做zval的結構表示,在PHP源代碼中這個結構名稱為“_zval_struct”。zval的具體定義在PHP源代碼的“Zend/zend.h”文件中,下面是相關代碼的摘錄。

typedef union _zvalue_value {
long lval; /* long value */
double dval; /* double value */
struct {
char *val;
int len;
} str;
HashTable *ht; /* hash table value */
zend_object_value obj;
} zvalue_value;
struct _zval_struct {
/* Variable information */
zvalue_value value;
/* value */
zend_uint refcount__GC;
zend_uchar type; /* active type */
zend_uchar is_ref__gc;
};
其中聯合體“_zvalue_value”用于表示PHP中所有變量的值,這里之所以使用union,是因為一個zval在一個時刻只能表示一種類型的變量。可以看到_zvalue_value中只有5個字段,但是PHP中算上NULL有8種數據類型,那么PHP內部是如何用5個字段表示8種類型呢?這算是PHP設計比較巧妙的一個地方,它通過復用字段達到了減少字段的目的。例如,在PHP內部布爾型、整型及資源(只要存儲資源的標識符即可)都是通過lval字段存儲的;dval用于存儲浮點型;str存儲字符串;ht存儲數組(注意PHP中的數組其實是哈希表);而obj存儲對象類型;如果所有字段全部置為0或NULL則表示PHP中的NULL,這樣就達到了用5個字段存儲8種類型的值。

而當前zval中的value(value的類型即是_zvalue_value)到底表示那種類型,則由“_zval_struct”中的type確定。_zval_struct即是zval在C語言中的具體實現,每個zval表示一個變量的內存對象。除了value和type,可以看到_zval_struct中還有兩個字段refcount__gc和is_ref__gc,從其后綴就可以斷定這兩個家伙與垃圾回收有關。沒錯,PHP的垃圾回收全靠這倆字段了。其中refcount__gc表示當前有幾個變量引用此zval,而is_ref__gc表示當前zval是否被按引用引用,這話聽起來很拗口,這和PHP中zval的“Write-On-Copy”機制有關,由于這個話題不是本文重點,因此這里不再詳述,讀者只需記住refcount__gc這個字段的作用即可。

PHP5.2中的垃圾回收算法——Reference Counting

PHP5.2中使用的內存回收算法是大名鼎鼎的Reference Counting,這個算法中文翻譯叫做“引用計數”,其思想非常直觀和簡潔:為每個內存對象分配一個計數器,當一個內存對象建立時計數器初始化為1(因此此時總是有一個變量引用此對象),以后每有一個新變量引用此內存對象,則計數器加1,而每當減少一個引用此內存對象的變量則計數器減1,當垃圾回收機制運作的時候,將所有計數器為0的內存對象銷毀并回收其占用的內存。而PHP中內存對象就是zval,而計數器就是refcount__gc。

例如下面一段PHP代碼演示了PHP5.2計數器的工作原理(計數器值通過xdebug得到):

< ?php
$val1 = 100; //zval(val1).refcount_gc = 1;
$val2 = $val1; //zval(val1).refcount_gc = 2,zval(val2).refcount_gc = 2(因為是Write on copy,當前val2與val1共同引用一個zval)
$val2 = 200; //zval(val1).refcount_gc = 1,zval(val2).refcount_gc = 1(此處val2新建了一個zval)
unset($val1); //zval(val1).refcount_gc = 0($val1引用的zval再也不可用,會被GC回收)
?>
Reference Counting簡單直觀,實現方便,但卻存在一個致命的缺陷,就是容易造成內存泄露。很多朋友可能已經意識到了,如果存在循環引用,那么Reference Counting就可能導致內存泄露。例如下面的代碼:

< ?php
$a = array();
$a[] = & $a;
unset($a);
?>
這段代碼首先建立了數組a,然后讓a的第一個元素按引用指向a,這時a的zval的refcount就變為2,然后我們銷毀變量a,此時a最初指向的zval的refcount為1,但是我們再也沒有辦法對其進行操作,因為其形成了一個循環自引用,如下圖所示:

其中灰色部分表示已經不復存在。由于a之前指向的zval的refcount為1(被其HashTable的第一個元素引用),這個zval就不會被GC銷毀,這部分內存就泄露了。

這里特別要指出的是,PHP是通過符號表(Symbol Table)存儲變量符號的,全局有一個符號表,而每個復雜類型如數組或對象有自己的符號表,因此上面代碼中,a和a[0]是兩個符號,但是a儲存在全局符號表中,而a[0]儲存在數組本身的符號表中,且這里a和a[0]引用同一個zval(當然符號a后來被銷毀了)。希望讀者朋友注意分清符號(Symbol)的zval的關系。

在PHP只用于做動態頁面腳本時,這種泄露也許不是很要緊,因為動態頁面腳本的生命周期很短,PHP會保證當腳本執行完畢后,釋放其所有資源。但是PHP發展到目前已經不僅僅用作動態頁面腳本這么簡單,如果將PHP用在生命周期較長的場景中,例如自動化測試腳本或deamon進程,那么經過多次循環后積累下來的內存泄露可能就會很嚴重。這并不是我在聳人聽聞,我曾經實習過的一個公司就通過PHP寫的deamon進程來與數據存儲服務器交互。

由于Reference Counting的這個缺陷,PHP5.3改進了垃圾回收算法。

PHP5.3中的垃圾回收算法——Concurrent Cycle Collection in Reference Counted Systems

PHP5.3的垃圾回收算法仍然以引用計數為基礎,但是不再是使用簡單計數作為回收準則,而是使用了一種同步回收算法,這個算法由IBM的工程師在論文Concurrent Cycle Collection in Reference Counted Systems中提出。

這個算法可謂相當復雜,從論文29頁的數量我想大家也能看出來,所以我不打算(也沒有能力)完整論述此算法,有興趣的朋友可以閱讀上面的提到的論文(強烈推薦,這篇論文非常精彩)。

我在這里,只能大體描述一下此算法的基本思想。

首先PHP會分配一個固定大小的“根緩沖區”,這個緩沖區用于存放固定數量的zval,這個數量默認是10,000,如果需要修改則需要修改源代碼Zend/zend_gc.c中的常量GC_ROOT_BUFFER_MAX_ENTRIES然后重新編譯。

由上文我們可以知道,一個zval如果有引用,要么被全局符號表中的符號引用,要么被其它表示復雜類型的zval中的符號引用。因此在zval中存在一些可能根(root)。這里我們暫且不討論PHP是如何發現這些可能根的,這是個很復雜的問題,總之PHP有辦法發現這些可能根zval并將它們投入根緩沖區。

當根緩沖區滿額時,PHP就會執行垃圾回收,此回收算法如下:

1、對每個根緩沖區中的根zval按照深度優先遍歷算法遍歷所有能遍歷到的zval,并將每個zval的refcount減1,同時為了避免對同一zval多次減1(因為可能不同的根能遍歷到同一個zval),每次對某個zval減1后就對其標記為“已減”。

2、再次對每個緩沖區中的根zval深度優先遍歷,如果某個zval的refcount不為0,則對其加1,否則保持其為0。

3、清空根緩沖區中的所有根(注意是把這些zval從緩沖區中清除而不是銷毀它們),然后銷毀所有refcount為0的zval,并收回其內存。

如果不能完全理解也沒有關系,只需記住PHP5.3的垃圾回收算法有以下幾點特性:

1、并不是每次refcount減少時都進入回收周期,只有根緩沖區滿額后在開始垃圾回收。

2、可以解決循環引用問題。

3、可以總將內存泄露保持在一個閾值以下。

PHP5.2與PHP5.3垃圾回收算法的性能比較

由于我目前條件所限,我就不重新設計試驗了,而是直接引用PHP Manual中的實驗,關于兩者的性能比較請參考PHP Manual中的相關章節:http://www.php.net/manual/en/features.gc.performance-considerations.php。

首先是內存泄露試驗,下面直接引用PHP Manual中的實驗代碼和試驗結果圖:

< ?php
class Foo
{
public $var = ’3.1415962654′;
}
$baseMemory = memory_get_usage();
for ( $i = 0; $i <= 100000; $i++ )
{
$a = new Foo;
$a->self = $a;
if ( $i % 500 === 0 )
{
echo sprintf( ’%8d: ’, $i ), memory_get_usage() – $baseMemory, ”\n”;
}
}
?>

可以看到在可能引發累積性內存泄露的場景下,PHP5.2發生持續累積性內存泄露,而PHP5.3則總能將內存泄露控制在一個閾值以下(與根緩沖區大小有關)。

另外是關于性能方面的對比:

< ?php
class Foo
{
public $var = ’3.1415962654′;
}
for ( $i = 0; $i <= 1000000; $i++ )
{
$a = new Foo;
$a->self = $a;
}
echo memory_get_peak_usage(), ”\n”;
?>
這個腳本執行1000000次循環,使得延遲時間足夠進行對比。

然后使用CLI方式分別在打開內存回收和關閉內存回收的的情況下運行此腳本:

time php -dzend.enable_gc=0 -dmemory_limit=-1 -n example2.php
# and
time php -dzend.enable_gc=1 -dmemory_limit=-1 -n example2.php
在我的機器環境下,運行時間分別為6.4s和7.2s,可以看到PHP5.3的垃圾回收機制會慢一些,但是影響并不大。

與垃圾回收算法相關的PHP配置

可以通過修改php.ini中的zend.enable_gc來打開或關閉PHP的垃圾回收機制,也可以通過調用gc_enable()或gc_disable()打開或關閉PHP的垃圾回收機制。在PHP5.3中即使關閉了垃圾回收機制,PHP仍然會記錄可能根到根緩沖區,只是當根緩沖區滿額時,PHP不會自動運行垃圾回收,當然,任何時候您都可以通過手工調用gc_collect_cycles()函數強制執行內存回收。

(若無特別注明, 張大奮的個人IT技術博客 文章皆為原創,轉載請注明出處)
原文鏈接: http://www.zhangdafen.com/archives/587

dafen @張大奮
最新發表
  • 20個實用的PHP庫(圖表、圖片、數據等)
  • 百度開發者中心已重磅推出了新服務——社會化服務組件!
  • 天上掉餡餅了! 兄弟連特訓班,首期免費!
  • 速成PHP自由建站 十天學會PHP –LAMP兄弟連
  • #520# 【程序員的告白】如果返回值為真,我將用盡一生去愛你;否則,我將釋放掉所有系統資源……
掃描雷鋒網微信二維碼
下載雷鋒網iOS客戶端

隨意打賞

提交建議
微信掃一掃,分享給好友吧。
主站蜘蛛池模板: 欧美日韩一本 | 欧美精品一级片 | 成人网在线观看 | 日本高清视频www夜色资源 | 成人在线视频网址 | 美女高潮视频在线观看 | 波多野结衣一区在线 | 国产做国产爱免费视频 | 自拍啪啪 | 亚洲欧美日韩久久精品第一区 | 免费看国产黄色片 | 国产精品美女久久久久av爽李琼 | 色国产精品一区在线观看 | 日韩午夜在线观看 | 麻豆精品免费 | 免费的一级黄色片 | 欧美日韩一级特黄 | 国语自产精品视频在线看 | 99热在线免费观看 | 天天色天天射天天干 | 密桃成熟时在线观看 | 精品视频久久久久久 | 性生交大片免费看女人按摩 | 中文字幕制服诱惑 | 伊人影院在线视频 | 色噜噜狠狠色综合网 | 四虎影城库 | 国产成人精品午夜视频免费 | 人妻av一区二区三区精品 | 欧美日韩一 | 解开人妻的裙子猛烈进入 | 狠狠干天天操 | 国产色网站 | 无码中文av波多野吉衣迅雷下载 | 国产刺激高潮av | 中午字幕在线观看 | 亚洲无毛女 | 毛片站| 黄色av网站免费观看 | 麻豆短视频在线观看 | 美女xx网站| 亚洲va在线va天堂va狼色在线 | 情欲按摩院同性3 | 成年人免费黄色 | 看免费黄色大片 | 丁香伊人网 | 亚洲午夜精品久久久久久人妖 | 欧美 日韩 国产 成人 在线 | 中文字幕欧美人妻精品一区 | 国产综合久久 | 国产精品国产三级国产专业不 | 少妇激情一区二区三区视频小说 | 亚洲精品乱码久久久久久黑人 | 成人福利小视频 | 一级特黄bbb大片免费看 | 亚洲成av人片在线观看ww | 午夜性色福利在线视频福利 | 久久久久成人精品无码 | 亚洲欧美日韩国产精品一区午夜 | 亚洲vs天堂 | 国产亚洲一卡2卡3卡4卡网站 | 免费人成网站 | 国产一区二区三区四区精 | 成人毛片在线视频 | 成人污在线观看 | 亚洲精品成a人在线 | 中文天堂在线播放 | 呻吟揉丰满对白91乃欧美区 | 色成人综合网 | 国产又黄又猛视频 | 欧美视频中文在线看 | 久久精品人成免费 | 国产盼盼私拍福利视频99 | 久久精品3 | 成人在线免费播放 | 极品女神爆呻吟啪啪 | 亚洲综合视频一区 | 又粗又爽又猛高潮的在线视频 | aaa人片在线 | 日本高清无卡码一区二区久久 | 男女洗澡视频网站 | 国产伦精品一区二区三区四区免费 | 亚洲天堂导航 | 波多野结衣视频免费 | 1区2区视频| 亚洲涩网 | 91视| 精品无码久久久久久久久 | 综合精品 | 天天夜夜久久 | 欧美精品久久久久久久免费软件 | 男人的天堂日本 | 性一交一伦一伦一视频 | 看a网站| mm131丰满少妇人体欣赏图 | 国产无人区码熟妇毛片多 | 黑人巨大猛交丰满少妇 | 大桥未久亚洲精品久久久强制中出 | 欧美大片18 | 国产资源久久 | 深夜福利国产 | 欧美77777 | 99久久99久久精品国产片果冻 | 精品国产乱码久久久久久88av | 又白又嫩毛又多15p 国产热の有码热の无码视频 | 成人超碰在线 | 男人扒开女人腿桶到爽免费 | 51精品国产 | 久久香蕉网 | 女人洗澡一级特黄毛片 | 亚洲网站免费观看 | 精品久久久久久久久午夜福利 | 色吊丝永久性观看网站 | 热热久| 麻花豆传媒剧国产免费mv入口 | 不戴套各种姿势啪啪高素质 | 亚洲天堂一区二区三区 | 精品国产一区二区三区四区阿崩 | 91精品国产91久久久 | 99精品久久 | 91在线免费看 | 国精产品一品二品国精在线观看 | 粉嫩av.com | 女教师痴汉调教hd中字 | 人妻无码一区二区三区 | 日韩一区二区三区在线观看视频 | 手机成人在线视频 | 动漫av在线免费观看 | 亚洲视频在线观看免费的欧美视频 | 18禁网站免费无遮挡无码中文 | 欧美乱大交做爰xxxⅹ小说 | 自拍偷拍小视频 | 国产在线一区二区三区四区五区 | 久久国产色av免费观看 | 亚洲综合在线另类色区奇米 | 久久久久久久久久久久久大色天下 | 亚洲超丰满肉感bbw 亚洲超碰在线 | 精品免费国产一区二区三区四区介绍 | 韩国三级大全久久网站 | xxx在线播放xxx | 乌克兰av在线 | 久久国产主播 | 熟女性饥渴一区二区三区 | 亚洲三级免费观看 | 久草在线成人 | 青青青草网站免费视频在线观看 | 日韩精品一区二区三区亚洲综合 | 无遮无挡爽爽免费毛片 | 午夜精品免费视频 | 少妇午夜啪爽嗷嗷叫视频 | 国产av新搬来的白领女邻居 | 精品欧美h无遮挡在线看中文 | 教师夫妇交换刺激做爰小说 | 涩涩网站在线观看 | 91久久精品视频 | 欧美又大又色又爽bbbbb片 | 国产精品久久久久久52avav | 亚洲成人经典 | 精品国产乱码久久久久久绯色 | 日韩免费中文字幕 | 国产日韩欧美综合 | 色噜噜狠狠一区二区 | 国产麻豆午夜三级精品 | 少妇愉情理伦片丰满丰满午夜 | 亚洲国产片 | 日本老头xxxx视频 | 午夜成午夜成年片在线观看 | 激情综合视频 | 在线爽 | 欧美一区二区三区在线 | 四虎影成人精品a片 | 91精产国品产区 | 国产精品爽爽ⅴa在线观看 国产精品亚洲精品日韩已方 | 高清精品一区二区三区 | 日韩 欧美 动漫 国产 制服 | 亚洲欧美日韩高清 | 大陆明星乱淫(高h)小说 | 日本无翼乌全彩j奶无遮挡漫 | 精品无码久久久久久国产 | 香蕉久久夜色精品升级完成 | 污污视频网站在线免费观看 | www.亚洲成人 | 91激情视频在线观看 | 国产精品一区亚洲二区日本三区 | 欧洲男女做爰免费视频 | 九九自拍视频 | 日韩在线一级片 | 日韩国产综合 | 在线精产国品 | 亚洲激情在线观看视频 | 又色又爽又黄又刺激免费 | 久久9966 | 久久精品人人做人人妻人人玩 | 成人深夜福利视频 | 日本边添边摸边做边爱 | 性久久久久久久 | 日韩欧美一卡二卡 | 天天干天天操天天爱 | 久久国产劲爆∧v内射 | 粉嫩av一区二区三区免费观看喜好 | 91视频亚洲 | 自拍偷拍五月天 | 久久av一区二区三区 | 性xxxxbbbb欧美熟妇 | 顶级尤物极品女神福利视频 | 中文字幕亚洲一区二区va在线 | 97在线观视频免费观看 | 久久久免费观看 | 亚洲一区二区高潮无套美女 | 欧美自拍第一页 | 穿情趣内衣c到高潮av片 | 热久久免费 | 亚洲精品久久久狠狠爱小说 | 亚洲精品在线播放视频 | 自拍偷拍精品视频 | 国产老熟女伦老熟妇露脸 | 22222se男人的天堂 | 国产视频a在线观看 | 国产亚洲精品精品国产亚洲综合 | 秋葵视频在线 | 俺去俺来也在线www色官网 | 久久理论视频 | 人人草网站 | 国产一区二区三区视频播放 | 欧美精品videos极品 | 日韩少妇精品av一区二区 | 国产三级aaa| 黄色三级a| 四虎永久免费观看 | 波多野结衣免费在线视频 | 精品偷自拍另类在线观看 | 成人在线观看a | 国产精品美女www爽爽爽软件 | 性夜影院午夜看片 | 五月天综合网站 | 日本亚洲在线 | 亚洲精品一区二区三天美 | 自拍av在线| 国内自拍一区 | 丁香激情婷婷 | 深夜福利在线观看视频 | 杨思敏全身裸体毛片看 | 免费大片黄在线观看视频网站 | 鲁在线视频 | 精品视频免费 | 激情综合五月天 | 国产精品久久人妻无码网站一区 | 48沈阳熟女高潮嗷嗷叫 | 日韩精品一区二区三区色欲av | √资源天堂中文在线视频 | 3344成人| 亚洲成av| 国精品无码一区二区三区在线蜜臀 | 国内自拍xxxx18 | 偷拍第1页 | 欧美视频一| 成 人 网 站国产免费观看 | 国偷自产av一区二区三区 | 色久月| 成人免费视频国产免费 | 国产精品毛片久久久久久久av | 99国产精品一区 | 清纯粉嫩极品夜夜嗨av | 在线观看中文字幕2021 | 四虎成人精品无码永久在线 | 色8久久精品久久久久久葡萄av | 91高清视频在线 | www.爱操| 国产精品va在线观看无码 | 欧美77777| 国产精品久久久久9999爆乳 | 国产第三页 | 国产高清在线观看 | 国产日韩久久久久69影院 | 亚洲国产精品美女久久久久 | 美女视频黄免费 | 亚洲男人的天堂在线 | 夜夜草网 | 78色淫网站女女免费 | 日本三级久久久 | 日本成人一区二区 | 成年人在线观看网站 | 一区二区国产在线 | 五月婷婷六月香 | av不卡免费看 | youjizz亚洲| 天堂网一区二区三区 | 国产精品你懂的 | 阿拉伯性视频xxxx | 野外做受又硬又粗又大视频√ | 色情无码一区二区三区 | 免费久久网站 | 嫩草影院在线视频 | 黑人粗进入欧美aaaaa | 污视频在线免费 | 色一涩| 亚洲精品av久久久久久久影院 | 亚洲精品天堂久久久老牛 | 99精品国产在热久久 | 91自啪| 欧美性xxxxxx | 日本va欧美va欧美va精品 | 日韩在线视屏 | 国产做受蜜臀 | 欧美日韩精品一区二区在线视频 | 亚洲天堂视频在线观看 | 日本特黄特色大片免费视频老年人 | 一级黄色免费视频 | 人妻无码一区二区不卡无码av | 国产精品av久久久久久久久久 | 欧美午夜网 | 夜噜噜久久国产欧美日韩精品 | 柳州莫菁菁av一区 | a级毛片蜜桃成熟时2在线播放 | 四虎播放 | 亚洲免费不卡视频 | 国产亚洲精品久久久久久牛牛 | 少妇二级淫片免费放 | 特一级一性一交一视一频 | 男女无套免费视频 | 亚洲欧洲日产国码二区 | 日本一级特黄aa大片 | 亚洲激情久久久 | 国产特级毛片aaaaaa高清 | 亚洲爆乳精品无码一区二区 | 亚洲无av在线中文字幕 | 久久久久久久久久久国产 | 91成人观看| 色牛影院 | 草草视频在线播放 | 99国产精品久久久久久久日本竹 | 久久成年人视频 | jizzjizz黄大片 | 男主和女配啪慎入h闺蜜宋冉 | 这里只有精品在线观看 | 欧美11p| 国产尻逼视频 | 在线播放免费播放av片 | 特级毛片a片久久久久久 | 中国少妇xxxxxbbbbb | 国产高清在线精品一区不卡 | 中文字幕亚洲欧美日韩在线不卡 | 日韩精品免费在线视频 | 亚洲精品国产一区二区 | 免费在线亚洲 | 国产老熟女网站 | 日本理论片免费观看在线视频 | 99久久久久成人国产免费 | 国产-第1页-浮力影院 | 国产中文区4幕区2021 | 成人高潮片 | 精品99久久| 3d毛片 | 欧美不卡视频一区发布 | 天堂а√在线地址在线 | 欧美一区二区在线免费观看 | 日韩欧群交p片内射中文 | 国产熟妇与子伦hd | 日日夜夜欧美 | 99re热在线视频 | 2020精品国产自在现线看 | 久久精品一区二区三区不卡牛牛 | 中国国产精品 | 综合网天天 | 国产精品久久久久久三级 | 全国最大成人网 | 91在线视频免费观看 | 亚洲美女啪啪 | 久久久久国产a免费观看rela | 国产伦精品一区二区三区免费迷 | 四虎影视国产精品免费久久 | 成人欧美一区二区三区视频 | 秋霞欧美一区二区三区视频免费 | 天堂久久爱资源站www | 柠檬福利视频导航 | 国产黄色在线网站 | 精品三级在线观看 | 日韩伦理视频 | 五月天婷婷综合网 | 色婷婷av一区 | 免费的很黄很污的视频 | 国产喂奶挤奶一区二区三区 | 少妇粉嫩小泬白浆流出 | 少妇被躁爽到高潮无码文 | 国产白嫩初高中害羞小美女 | 中文字幕一区二区在线观看 | 99国产精品视频免费观看一公开 | av中文字幕第一页 | 亚洲精品主播一区二区三区 | 激情97综合亚洲色婷婷五 | 手机国产乱子伦精品视频 | 婷婷深爱网| 国产精品一久久香蕉国产线看观看 | 波多野结衣视频在线看 | 亚洲天堂1 | 亚洲精品3p | 一级欧美一级日韩片 | 欧美成人aaaaⅴ片在线看 | 国产天堂| 无码人妻出轨黑人中文字幕 | 日韩九九九 | 中文字幕无码免费久久99 | 欧美日本韩国 | 国内久久精品视频 | 天天爽夜夜爽夜夜爽精品视频 | 色综合 图片区 小说区 | 99国产精品永久免费视频 | 国内精品一区二区三区 | 成人午夜在线影院 | 国内精品视频一区二区三区 | av片久久| 99久久久无码国产精品性 | 天堂婷婷 | 国内自拍偷区亚洲综合伊人 | 色婷婷综合中文久久一本 | 亚洲色图第1页 | 神秘马戏团在线观看免费高清中文 | 91亚色| 免费一区在线观看 | 精品国产乱码久久久久久蜜柚 | 天天爱天天做天天大综合 | av国产在线观看 | 日韩成人精品在线 | 欧美激情黑人 | 美女视频黄色免费 | 狠狠爱俺也去去就色 | 91久久久一线二线三线品牌 | 少妇又色又紧又大爽又刺激 | 欧美xxxxxx片免费播放软件 | 国产精品视频区 | 香蕉视频官网在线观看 | 欧美午夜理伦三级在线观看吃奶汁 | 欧美日韩在线视频一区二区三区 | 久久精品中文字幕第一页 | 精品一区二区三区激情在线欧美 | 国产91久久久 | av网站免费在线观看 | 性,国产三级在线观看 | 永久免费精品视频网站 | 亚洲精品v日韩精品 | 日韩精品免费一区二区三区四区 | 亚洲第一综合网 | 日本视频久久 | xxxx少妇高潮毛片新婚之夜 | 24小时日本韩国在线观看 | 精品少妇一区二区三区免费观 | 国产精品日韩av在线播放 | 一区二区小说 | 中国老熟女重囗味hdxx | 韩国av中文字幕 | 永久免费看片在线 | 亚洲精品久久久久久久久久久 | 久久一视频 | 国产精品影 | 18禁超污无遮挡无码免费游戏 | 99国产精品久久久久 | 欧美一区二区三区爽爽爽 | 国产精欧美一区二区三区 | 香蕉视频在线网址 | 成人观看视频 | 亚洲美女视频在线 | 国产精品久久久久久久久久久免费看 | 少妇天天干 | www天堂网| 在线观看老湿视频福利 | 在线无码免费的毛片视频 | 黄片毛片免费在线观看 | 日本a天堂 | 国产精品18久久久久白浆软件 | 国产精品久久久久久久免费观看 | 国产情侣激情在线对白 | 久久99精品久久久久久噜噜 | 日韩色黄大片 | 欧美做爰猛烈床戏大尺度 | 久久精品国产精品亚洲38 | 好会夹宝h1v1 | 中文字幕一区二区不卡 | 征服少妇柔佳系列 | 被灌满精子的少妇视频 | 成人免费xxxxx在线观看 | 在线观看日本中文字幕 | 无码尹人久久相蕉无码 | 可以直接免费观看的av网站 | 亚洲欧美婷婷 | 国产精品国产三级国产有见不卡 | 交换一区二区三区va在线 | 日本在线免费看 | 国产日产欧产美一二三区 | 亚州视频一区二区三区 | 日韩欧美一区视频 | 欧美jizz18| 91高清视频在线 | 极品久久 | 成年人黄色大片大全 | 秋霞av鲁丝片一区二区 | 日韩一区二区在线视频 | 国产办公室秘书无码精品99 | 午夜性视频国产牛牛视频 | 最近中文字幕mv免费高清在线 | 日韩精品无码不卡无码 | 日日躁夜夜躁白天躁晚上 | 日出水了特别黄的视频 | 大肉大捧一进一出好爽视频mba | www爱爱| 好色婷婷 | 国产成人三级在线播放 | 久久久亚洲国产精品 | 国产精品农村妇女bbw | 国产精品毛片完整版视频 | 在线观看av黄色 | 国产真人做爰视频免费 | 日韩成人在线播放 | 国精品无码人妻一区二区三区 | 3d动漫精品啪啪一区二区中 | 精品少妇ay一区二区三区 | 亚洲国产精品尤物yw在线观看 | 凹凸精品熟女在线观看 | 亚洲精品在线不卡 | 另类少妇人与禽zozz0性伦 | 97免费人妻在线视频 | 97在线视频免费人妻 | 国产成人无码综合亚洲日韩 | 欧美日韩一区二区区别是什么 | 国产自产在线 | 丝袜一区二区三区 | 精品亚洲一区二区三区四区五区 | 人妻无码一区二区三区 | 爱情岛论坛av首页 | 第九色区av天堂 | 欧美日韩在线综合 | 久久精品国产亚洲5555 | 精品国产专区 | 在线观看特色大片免费网站 | 亚欧成人 | 伦理黄色片 | 制服 丝袜 综合 日韩 欧美 | 亚洲欧美中文日韩在线v日本 | 视频在线观看一区二区 | 亚洲精品在线观看视频 | jizzxxxx18高清喷水 | 女性无套免费网站在线看 | 久久成人影院精品777 | 色欧美综合 | 又湿又紧又大又爽a视频国产 | 成人国产精品入口免费视频 | 欧美无遮挡很黄裸交视频 | 中国黄色一级片 | 免费av观看 | 久久精品视频1 | 毛片视频免费 | 欧美成人精品一区二区三区在线观看 | 伊人国产在线 | 日本美女毛片 | 九九久久九九久久 | 亚洲制服在线观看 | 日本福利一区二区 | 欧美国产中文 | 伊人天天 | 青娱乐伊人 | 亚洲精品一区二区三区四区乱码 | 色老妹| bt天堂新版中文在线地址 | 国产高清一区二区三区视频 | 国内乱子对白免费在线 | 性色av一区二区三区红粉影视 | 91精品国产色综合久久不卡98最新章节 | 国产精品视频yy9099 | 日韩在线三区 | 国产性生交大片免费 | 亚洲人成网亚洲欧洲无码久久 | 久久久国产精品久久久 | 色欲av无码一区二区三区 | www.av免费| 奇米久久 | 国产日韩欧美日韩大片 | 天天av天天操 | 久久久精品人妻一区二区三区四 | 久久久国产精华液 | 无码日韩精品一区二区免费 | 欧美精品在线播放 | 污网站免费在线 | wwwav在线播放 | 亚洲国产一线二线三线 | 97视频在线| 97人人草 | 男人和女人做爽爽视频 | 亚洲奶汁xxxx哺乳期 | 特黄特色三级在线观看 | www国产在线观看 | 成人性生交大片免费看冫视频 | 美女黄色毛片 | 成人亚洲综合 | 在线视频国产一区 | а√新版天堂资源中文8 | 亚洲欧洲精品成人久久曰 | 高h禁伦餐桌上的肉伦 | 超碰色偷偷男人的天堂 | 免费性网站 | 色视频网站免费看 | 人与鲁性猛交xxxx | 国产精品免费视频一区二区 | 色呦呦在线 | 免费久久日韩aaaaa大片 | 国产又色又爽又刺激在线观看 | 91精品91久久久中77777老牛 | 成年人小视频网站 | 狠狠综合久久av一区二区老牛 | 日韩欧美一级大片 | 天天色综合图片 | 中文字幕中文在线 | 青青在线免费观看 | xxxx日本免费 | 北条麻妃在线一区二区免费播放 | 亚洲最黄视频 | 日韩精品一线二线三线 |