久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

淺談java對象結構 對象頭 Markword

瀏覽:167日期:2022-05-25 17:14:34

概述

對象實例由對象頭、實例數據組成,其中對象頭包括markword和類型指針,如果是數組,還包括數組長度;

| 類型 | 32位JVM | 64位JVM|| ------ ---- | ------------| --------- || markword | 32bit | 64bit || 類型指針 | 32bit |64bit ,開啟指針壓縮時為32bit || 數組長度 | 32bit |32bit |

淺談java對象結構 對象頭 Markword

header.png

淺談java對象結構 對象頭 Markword

compressed_header.png

可以看到

開啟指針壓縮時,markword占用8bytes,類型指針占用8bytes,共占用16bytes;

未開啟指針壓縮時,markword占用8bytes,類型指針占用4bytes,但由于java內存地址按照8bytes對齊,長度必須是8的倍數,因此會從12bytes補全到16bytes;

數組長度為4bytes,同樣會進行對齊,補足到8bytes;

另外從上面的截圖可以看到,開啟指針壓縮之后,對象類型指針為0xf800c005,但實際的類型指針為0x7c0060028;那么指針是如何壓縮的呢?

實際上由于java地址一定是8的倍數,因此將0xf800c005*8即可得到實際的指針0x7c0060028,關于指針壓縮的更多知識可參考官方文檔。

markword結構

markword的結構,定義在markOop.hpp文件:

32 bits: -------- hash:25 ------------>| age:4 biased_lock:1 lock:2 (normal object) JavaThread*:23 epoch:2 age:4 biased_lock:1 lock:2 (biased object) size:32 ------------------------------------------>| (CMS free block) PromotedObject*:29 ---------->| promo_bits:3 ----->| (CMS promoted object) 64 bits: -------- unused:25 hash:31 -->| unused:1 age:4 biased_lock:1 lock:2 (normal object) JavaThread*:54 epoch:2 unused:1 age:4 biased_lock:1 lock:2 (biased object) PromotedObject*:61 --------------------->| promo_bits:3 ----->| (CMS promoted object) size:64 ----------------------------------------------------->| (CMS free block) unused:25 hash:31 -->| cms_free:1 age:4 biased_lock:1 lock:2 (COOPs && normal object) JavaThread*:54 epoch:2 cms_free:1 age:4 biased_lock:1 lock:2 (COOPs && biased object) narrowOop:32 unused:24 cms_free:1 unused:4 promo_bits:3 ----->| (COOPs && CMS promoted object) unused:21 size:35 -->| cms_free:1 unused:7 ------------------>| (COOPs && CMS free block) [ptr | 00] locked ptr points to real header on stack [header | 0 | 01] unlocked regular object header [ptr | 10] monitor inflated lock (header is wapped out) [ptr | 11] marked used by markSweep to mark an object

由于目前基本都在使用64位JVM,此處不再對32位的結構進行詳細說明:

偏向鎖標識位 鎖標識位 鎖狀態 存儲內容 0 01 未鎖定 hash code(31),年齡(4) 1 01 偏向鎖 線程ID(54),時間戳(2),年齡(4) 無 00 輕量級鎖 棧中鎖記錄的指針(64) 無 10 重量級鎖 monitor的指針(64) 無 11 GC標記 空,不需要記錄信息

此處,有幾點要注意:

如果對象沒有重寫hashcode方法,那么默認是調用os::random產生hashcode,可以通過System.identityHashCode獲取;os::random產生hashcode的規則為:next_rand = (16807seed) mod (2*31-1),因此可以使用31位存儲;另外一旦生成了hashcode,JVM會將其記錄在markword中;

GC年齡采用4位bit存儲,最大為15,例如MaxTenuringThreshold參數默認值就是15;

當處于輕量級鎖、重量級鎖時,記錄的對象指針,根據JVM的說明,此時認為指針仍然是64位,最低兩位假定為0;當處于偏向鎖時,記錄的為獲得偏向鎖的線程指針,該指針也是64位;

We assume that stack/thread pointers have the lowest two bits cleared.ObjectMonitor* monitor() const { assert(has_monitor(), 'check'); // Use xor instead of &~ to provide one extra tag-bit check. return (ObjectMonitor*) (value() ^ monitor_value);//monitor_value=2,value最右兩位為10,因此異或之后最右兩位為0 }JavaThread* biased_locker() const { assert(has_bias_pattern(), 'should not call this otherwise'); return (JavaThread*) ((intptr_t) (mask_bits(value(), ~(biased_lock_mask_in_place | age_mask_in_place | epoch_mask_in_place))));//~(biased_lock_mask_in_place | age_mask_in_place | epoch_mask_in_place)為11111111111111111111110010000000,計算后的結果中,低10位全部為0; }

由于java中內存地址都是8的倍數,因此可以理解為最低3bit為0,因此假設輕量級和重量級鎖的最低2位為0是成立的;但為什么偏向鎖的最低10位都是0?查看markOop.hpp文件,發現有這么一句話:

// Alignment of JavaThread pointers encoded in object header required by biased locking enum { biased_lock_alignment = 2 << (epoch_shift + epoch_bits)//epoch_shift+epoch_bits=10 };

thread.hpp中重載了operator new:

void* operator new(size_t size) { return allocate(size, true); }// ======= Thread ========// Support for forcing alignment of thread objects for biased lockingvoid* Thread::allocate(size_t size, bool throw_excpt, MEMFLAGS flags) { if (UseBiasedLocking) { const int alignment = markOopDesc::biased_lock_alignment;//10 size_t aligned_size = size + (alignment - sizeof(intptr_t)); void* real_malloc_addr = throw_excpt? AllocateHeap(aligned_size, flags, CURRENT_PC) : os::malloc(aligned_size, flags, CURRENT_PC); void* aligned_addr = (void*) align_size_up((intptr_t) real_malloc_addr, alignment); assert(((uintptr_t) aligned_addr + (uintptr_t) size) <= ((uintptr_t) real_malloc_addr + (uintptr_t) aligned_size), 'JavaThread alignment code overflowed allocated storage'); if (TraceBiasedLocking) { if (aligned_addr != real_malloc_addr) tty->print_cr('Aligned thread ' INTPTR_FORMAT ' to ' INTPTR_FORMAT, real_malloc_addr, aligned_addr); } ((Thread*) aligned_addr)->_real_malloc_address = real_malloc_addr; return aligned_addr; } else { return throw_excpt? AllocateHeap(size, flags, CURRENT_PC) : os::malloc(size, flags, CURRENT_PC); }}

如果開啟了偏移鎖,在創建線程時,線程地址會進行對齊處理,保證低10位為0

實例數據

實例數據中主要包括對象的各種成員變量,包括基本類型和引用類型;static類型的變量會放到java/lang/Class中,而不會放到實例數據中;

對于引用類型的成員(包括string),存儲的指針;對于基本類型,直接存儲內容;通常會將基本類型存儲在一起,引用類型存儲在一起;

例如類Test的成員定義如下:

private static Test t1=new Test(); private Test t2; private int a=5; private Integer b=7; private String c='112'; private BigDecimal d=new BigDecimal('5'); private long e=9l;

淺談java對象結構 對象頭 Markword

body.png

可以看到long e、int a為基本類型,存儲在一起;其它的引用類型存儲在一起;int占用4bytes,不足8bytes,自動補足到8bytes;

補充知識:java的對象物理結構,以及對象頭中MarkWord與鎖的關系

java 對象頭

我們都知道,Java對象存儲在堆(Heap)內存。那么一個Java對象到底包含什么呢?概括起來分為對象頭、對象體和對齊字節。

如下圖所示:

淺談java對象結構 對象頭 Markword

對象的幾個部分的作用:

1.對象頭中的Mark Word(標記字)主要用來表示對象的線程鎖狀態,另外還可以用來配合GC、存放該對象的hashCode;

2.Klass Word是一個指向方法區中Class信息的指針,意味著該對象可隨時知道自己是哪個Class的實例;

3.數組長度也是占用64位(8字節)的空間,這是可選的,只有當本對象是一個數組對象時才會有這個部分;

4.對象體是用于保存對象屬性和值的主體部分,占用內存空間取決于對象的屬性數量和類型;

5.對齊字是為了減少堆內存的碎片空間(不一定準確)。

了解了對象的總體結構,接下來深入地了解對象頭的三個部分。

一、Mark Word(標記字)

淺談java對象結構 對象頭 Markword

以上是Java對象處于5種不同狀態時,Mark Word中64個位的表現形式,上面每一行代表對象處于某種狀態時的樣子。其中各部分的含義如下:

lock:2位的鎖狀態標記位,由于希望用盡可能少的二進制位表示盡可能多的信息,所以設置了lock標記。該標記的值不同,整個Mark Word表示的含義不同。biased_lock和lock一起,表達的鎖狀態含義如下:

淺談java對象結構 對象頭 Markword

biased_lock:對象是否啟用偏向鎖標記,只占1個二進制位。為1時表示對象啟用偏向鎖,為0時表示對象沒有偏向鎖。lock和biased_lock共同表示對象處于什么鎖狀態。

age:4位的Java對象年齡。在GC中,如果對象在Survivor區復制一次,年齡增加1。當對象達到設定的閾值時,將會晉升到老年代。默認情況下,并行GC的年齡閾值為15,并發GC的年齡閾值為6。由于age只有4位,所以最大值為15,這就是-XX:MaxTenuringThreshold選項最大值為15的原因。

identity_hashcode:31位的對象標識hashCode,采用延遲加載技術。調用方法System.identityHashCode()計算,并會將結果寫到該對象頭中。當對象加鎖后(偏向、輕量級、重量級),MarkWord的字節沒有足夠的空間保存hashCode,因此該值會移動到管程Monitor中。

thread:持有偏向鎖的線程ID。

epoch:偏向鎖的時間戳。

ptr_to_lock_record:輕量級鎖狀態下,指向棧中鎖記錄的指針。

ptr_to_heavyweight_monitor:重量級鎖狀態下,指向對象監視器Monitor的指針。

淺談java對象結構 對象頭 Markword

二、Klass Word(類指針)

這一部分用于存儲對象的類型指針,該指針指向它的類元數據,JVM通過這個指針確定對象是哪個類的實例。該指針的位長度為JVM的一個字大小,即32位的JVM為32位,64位的JVM為64位。

如果應用的對象過多,使用64位的指針將浪費大量內存,統計而言,64位的JVM將會比32位的JVM多耗費50%的內存。為了節約內存可以使用選項+UseCompressedOops開啟指針壓縮,其中,oop即ordinary object pointer普通對象指針。

開啟該選項后,下列指針將壓縮至32位:

每個Class的屬性指針(即靜態變量)

每個對象的屬性指針(即對象變量)

普通對象數組的每個元素指針

當然,也不是所有的指針都會壓縮,一些特殊類型的指針JVM不會優化,比如指向PermGen的Class對象指針(JDK8中指向元空間的Class對象指針)、本地變量、堆棧元素、入參、返回值和NULL指針等。

三、數組長度

如果對象是一個數組,那么對象頭還需要有額外的空間用于存儲數組的長度,這部分數據的長度也隨著JVM架構的不同而不同:32位的JVM上,長度為32位;64位JVM則為64位。

64位JVM如果開啟+UseCompressedOops選項,該區域長度也將由64位壓縮至32位。

以上這篇淺談java對象結構 對象頭 Markword就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: word
相關文章:
主站蜘蛛池模板: 日本欧美国产 | 极品久久| 久久91精品 | 久久精品久久久久 | 亚洲精品色 | 黄色一级大片在线免费看产 | 久久久婷 | 久久精品免费国产 | 色性视频 | 日韩视频久久 | 成人免费毛片aaaaaa片 | 久久国产欧美日韩精品 | 精品国产污网站污在线观看15 | 国产一区二区影院 | 国产老头老太作爱视频 | av在线一区二区三区 | 午夜免费片 | 国产中文字幕一区 | 超级乱淫片国语对白免费视频 | www.久久.com| 99精品欧美一区二区三区综合在线 | 日韩国产中文字幕 | 国产午夜精品久久久久久久 | 亚洲综合视频在线 | 欧美www.| 在线观看日韩 | 91麻豆精品国产91久久久久久久久 | 日韩一区二 | 免费三级电影网站 | 亚洲精美视频 | 国产精品二区三区 | 欧美成人高清 | 中文一区二区 | 黄色片网站 | 免费观看一区二区三区毛片软件 | 最新中文字幕在线 | 国产精品18久久久久久首页狼 | 日韩在线观看三区 | 狠狠艹视频 | 成人深夜在线 | 成人久久18免费观看 | 91久久看片| 日韩欧美在线视频 | 欧美午夜视频 | 99re视频| 国产精品久久久久久久久久久久冷 | 日韩免费| 久久不卡日韩美女 | 七七婷婷婷婷精品国产 | 噜噜噜视频在线观看 | 美女久久 | www视频在线观看 | 国产成人免费视频网站视频社区 | 国产伦精品一区二区三区四区视频 | 日韩成人tv | 国产精品一区久久久久 | 国产三级在线观看 | 五月婷婷激情 | 亚洲精品乱码久久久久久蜜桃不卡 | 国产精品一区二 | 日韩精品一区二区三区在线观看 | 国产精品成人3p一区二区三区 | 欧美福利影院 | 全黄大全大色全免费大片 | 久久中文字幕一区 | 欧美美女爱爱视频 | 成人在线网 | 久久综合久久久 | 一级毛片免费完整视频 | 一区二区三区国产 | 欧美成在线观看 | av中文字幕第一页 | 日韩综合在线 | 成人精品 | 成人影院网站ww555久久精品 | 欧美日韩一区二区三区在线观看 | 精品国产乱码久久久久久闺蜜 | jizz在线观看 | 卡通动漫第一页 | 国产最新网址 | 亚洲精品在线国产 | 另类色| 黄色影视在线免费观看 | 一区二区视频 | 亚洲精品一区国语对白 | 国产a久久精品一区二区三区 | 黄色在线观看网址 | 亚洲一区二区三区四区五区中文 | 91精品国产综合久久久久久 | 成人免费视频网 | 久久只有精品 | 视频一区二区三区免费观看 | 国产在线播 | 精品国产一区二区在线 | 一区二区三区视频免费在线观看 | 日韩av在线不卡 | 欧美福利一区二区 | 中文字字幕在线观看 | 成人午夜精品一区二区三区 | 国产精品成av人在线视午夜片 | 91久久91久久精品免观看 | 欧美久久精品 | 亚洲一级在线观看 | 91精品国产综合久久婷婷香蕉 | 国产精品18久久久久久久久 | 一二三区字幕免费观看av | 狠狠躁夜夜躁人人爽天天高潮 | 福利视频1000 | 欧美午夜视频 | 国产一级做a爰片在线看免费 | 日韩电影免费在线观看中文字幕 | 精品视频一区二区在线 | 色伊人| 日韩欧美一二三区 | 毛片在线免费 | 中文字幕亚洲欧美日韩在线不卡 | 国产一区二区三区在线视频 | 91在线区 | 国产日韩免费 | 一区二区三区四区在线 | 亚洲成人免费网站 | 亚洲视频一区二区 | 欧美在线视频三区 | 毛片国产 | 中文字幕欧美日韩 | 看一级毛片视频 | 亚洲一区二区三区久久 | 精品一区二区久久 | 久久久99精品免费观看 | 三级特黄特色视频 | 九九99久久 | 亚洲欧美日韩电影 | 亚洲男人的天堂在线播放 | www.久草.com | 亚洲精品久久久久999中文字幕 | 欧美精品福利 | 日韩中文字幕一区二区 | 日韩免费网站 | 欧美成人一区二区三区片免费 | 黄色直接看 | 中文字幕第56页 | 91久久久www播放日本观看 | 国产精品视频一 | 亚洲免费网址 | 羞羞视频网站在线看 | 91在线视频在线 | 欧美日韩激情一区二区三区 | 久久草视频 | 夜夜夜久久久 | 成人欧美一区二区三区在线播放 | 亚洲久久 | 久久黄色网 | 少妇久久久 | 午夜成人免费电影 | 国产h视频在线观看 | 欧美国产一区二区 | 精品九九| 操皮视频| 精品国产综合 | 国产在线观看一区二区 | 国产精品高清在线观看 | 欧美不卡一区二区三区 | 日韩中文字幕在线 | 一级片黄片毛片 | 九九香蕉视频 | 久久四色 | 午夜在线一区 | 日本在线观看一区 | 伊人激情影院 | 久免费视频 | 欧美淫视频 | 欧美成人一区二区三区片免费 | 午夜视频91 | 一区在线免费 | 黄色一级片在线看 | 国产一级特黄aaa大片 | 男女做爰高清无遮挡免费视频 | 求av网址| 国产中文在线 | av成人在线观看 | 一级一片免费视频 | 粉嫩高清一区二区三区精品视频 | 久草青青 | 欧美性猛交一区二区三区精品 | 色综合欧美 | 91看片网站| 欧美日韩在线免费观看 | 日韩一区二区在线观看 | 国产精品美女视频免费观看软件 | 成人一区二区在线 | 欧美视频在线一区 | 久久综合久久综合久久综合 | 一区二区三区日本 | www.久久| 久久综合一区二区三区 | 国产精品视频一二 | 综合亚洲精品 | 在线看91 | 天天天天天天天天干 | 日韩精品一区二区三区 | 色婷婷综合久色 | 天天操天天干天天插 | 欧美日韩在线播放 | 一级黄色毛片 | 亚洲精品乱码久久久久久麻豆不卡 | 综合av第一页| 天天舔夜夜操 | 成人在线免费视频 | 亚洲免费影院 | 在线看国产 | 亚洲人成网亚洲欧洲无码 | 91视频免费观看 | 久久国产欧美日韩精品 | 日本精品一区 | 国产精品成人3p一区二区三区 | 久久亚洲一区 | 久久精品99国产精品亚洲最刺激 | 欧美视频精品 | 亚洲男人天堂网 | 免费观看黄视频 | 亚洲午夜精品一区二区三区他趣 | 亚洲成人av在线播放 | 久久999| 欧美福利在线 | 国产亚洲精品久久久闺蜜 | 国产欧美精品一区二区 | 日本一区二区三区免费观看 | 日韩在线免费视频 | 成人福利网 | www.久久久久久久久久久久 | 99久久精品免费看国产一区二区三区 | 一区二区三区在线免费观看 | 精品久久久久久久久久久久久久久 | 欧美成人精品一区 | 国产福利在线观看视频 | 色香阁99久久精品久久久 | 青草视频在线免费观看 | 殴美一区| 国产视频二区 | 成人免费毛片高清视频 | 一级黄色毛片a | 日本视频网 | 日韩中文一区 | 黄的视频网站 | 精品视频一区二区三区 | 99免费在线观看视频 | 波多野结衣先锋影音 | 亚洲国产精品久久 | 特一级毛片 | 国产成人精品免高潮在线观看 | 成人在线观看av | 99久久99| 精品网站www| 亚洲精品亚洲人成人网 | 精品久久精品久久 | va在线| 亚洲国产一区二区三区在线观看 | 亚洲一区二区av | 免费视频一区 | 精品一区二区三区免费 | 国产一区二区三区在线免费观看 | 欧洲尺码日本国产精品 | 精品在线一区 | 久久九| 久久久久久久久中文字幕 | 欧美激情一区 | 最新天堂中文在线 | 亚洲不卡视频在线 | 亚洲电影一区二区三区 | 欧美日韩精品一区 | 久色视频 | 99视频在线播放 | 久久伦理电影网 | 亚洲一区中文字幕 | 国产一区二区欧美 | 东京久久久 | 国产午夜精品一区二区 | 中文字幕亚洲一区二区va在线 | 成人小视频在线观看 | 在线色av | 日韩精品一区二区三区中文字幕 | 精品国产乱码久久久久久1区二区 | 99久久精品一区二区 | 欧美日本国产一区 | 欧美日韩一级二级三级 | 91av国产精品 | 欧美极品一区二区三区 | 一区二区三区回区在观看免费视频 | 国产精品99久久久久久www | 日韩福利影院 | 美女主播精品视频一二三四 | 国产大奶视频 | 亚洲国产欧美91 | 亚洲天堂一区二区 | 日韩中文字幕一区二区 | 天天久久综合网 | 欧美在线综合 | 日韩成人国产 | 欧洲精品在线视频 | 韩国精品主播一区二区在线观看 | 米奇狠狠操 | 午夜欧美 | 久久久国产精品入口麻豆 | 久久亚洲国产 | 精品亚洲视频在线 | 日韩一区在线播放 | 欧美一级毛片久久99精品蜜桃 | 亚洲精品在线观看免费 | 伊人啪啪| 中字一区| 四虎动漫 | 99热在线播放 | 国产www精品| 亚洲永久| 亚洲无吗天堂 | 国产日韩精品一区二区 | 99re在线播放视频 | 天天干狠狠干 | 91久久久久久久久 | 国产精品久久久久久久久久久久久久 | 天天干天天插 | 高清视频一区二区三区 | 羞羞的视频在线观看 | 激情一区二区三区 | 亚洲精品久久久久国产 | 精品免费 | 人人看人人草 | 亚洲国产高清视频 | 日日干夜夜骑 | 一区二区国产在线观看 | 成人日批 | 人人干天天操 | 成人a在线视频免费观看 | 国产精品三级久久久久久电影 | 日本久久国产 | 九九re | 97在线观看视频 | 久久天天躁狠狠躁夜夜躁2014 | 中文成人无字幕乱码精品 | 仙人掌旅馆在线观看 | 久久精品欧美一区二区三区不卡 | 欧美日韩大陆 | 国产成人精品一区二 | 亚洲网站免费 | 精品国产欧美一区二区三区不卡 | 国产黄色免费网站 | 黄色一级视 | 欧美精品一区二区三区在线播放 | 精品国产不卡一区二区三区 | 99国产精品久久久 | 免费观看在线午夜影视 | 中文字幕在线看第二 | 丁香亚洲 | 欧美一级片免费播放 | 视频一区二区国产 | 国产激情精品一区二区三区 | 一级毛片色一级 | 玖玖操 | 成人在线| 99精品一区二区三区 | 欧美综合视频 | 欧美成年网站 | 亚洲精品成人在线 | 日日操视频 | 视频1区 | 97人人爱| 欧美天堂在线观看 | 日韩av在线中文字幕 | 香蕉成人啪国产精品视频综合网 | 国产一级视频 | aaa久久 | 综合自拍偷拍 | 欧美一级裸体视频 | 欧美一区二区在线 | 久久综合一区二区三区 | 日韩精品极品视频在线 | 精品一二区 | 激情自拍偷拍 | 国产精品久久久久久久久久免费看 | 人人人人澡 | 精品国产依人香蕉在线精品 | 欧美大片免费高清观看 | 久久一区二区视频 | 999在线观看精品免费不卡网站 | 精品国产一区二区三区在线观看 | 欧美日韩二区三区 | 欧美午夜一区二区三区 | 久久久久久久久久久久久av | 国产艳妇av视国产精选av一区 | 免费看片色 | 看毛片网站 | 欧美成人性生活 | 欧美aaa一级片 | 91短视频版在线观看www免费 | 国产一级特黄视频 | 国产精品久久二区 | 国产日韩一区二区 | 人人做人人澡人人爽欧美 | 91伊人网| 欧美成人久久 | 天天干狠狠 | 久久国产精品久久久久久 | 97久久久国产精品 | 亚洲欧美在线观看 | 国产精品日产欧美久久久久 | 97精品在线 | av一级久久 | 亚洲一区二区三区高清 | 国内久久精品 | 91网站在线播放 | 欧美日韩成人在线 | 欧美在线综合 | 久久综合伊人 | 91精品国产99久久久久久红楼 | 欧美色欧美亚洲另类七区 | 午夜精品偷拍 | 日韩在线一区二区三区 | 视频一区二区三区在线播放 | 美女久久久 | 国产精品www | 最新一级毛片 | 国产一区二区在线播放 | 免费一级在线观看 | 久久久综合视频 | 国产日韩一区 | 九九热这里只有精品6 | www.嫩草| 成人国产精品色哟哟 | 久久这里有精品视频 | 久久精品国产99国产精品 | av在线中文 | 欧美顶级毛片在线播放 | 日本免费三片免费观看 | 太平公主一级艳史播放高清 | 日韩精品在线一区 | 日韩在线精品强乱中文字幕 | 看毛片网 | 国产精品视频网 | 国产高清美女一级a毛片久久 | 国产超碰人人爽人人做人人爱 | 日韩高清中文字幕 | 国产超碰人人爽人人做人人爱 | 免费视频一区二区三区在线观看 | 一级视频在线观看 | 日本成人黄色网址 | 欧美精品久 | 日韩一区二区三区在线 | 中字幕视频在线永久在线观看免费 | 久久亚洲国产精品 | 久久久毛片 | 欧美国产视频 | 一级毛片电影院 | 日日摸日日碰夜夜爽不卡dvd | 欧美天天 | 日韩亚洲视频 | 一区二区三区国产视频 | 精品免费国产一区二区三区 | av网站推荐 | 欧美在线观看免费观看视频 | 国产在线中文字幕 | 亚洲精品电影网在线观看 | 午夜私人影院 | 视频二区 | 精品少妇一区二区三区日产乱码 | 中文字幕日韩一区二区 | 久久久精品日韩 | 一区二区日韩视频 | 久久51 | 麻豆高清免费国产一区 | 久久99深爱久久99精品 | 夜夜骚 | 欧美视频一区二区三区在线观看 | 久久精品小视频 | 一区二区三区四区不卡视频 | 久久久久国产亚洲日本 | 欧美精品一区二区三区在线 | 国产福利一区二区三区视频 | 国产丝袜在线 | 色综合久久88色综合天天 | 日韩一区二区在线观看 | 日韩和的一区二区 | 欧美性v| 午夜视频在线观看网址 | 91免费看| 日日骚 | 一级在线观看 | 亚洲欧美在线一区二区 | 免费在线成人 | 男女中文字幕 | 在线天堂新版最新版在线8 www.国产欧美 | 久久兔费看a级 | 91电影在线 | 超碰人人干 | 日本妇乱大交xxxxx | 国产精品欧美一区二区三区不卡 | sese综合 | 国产一区999 | 欧美一区二区激情三区 | 极品一区 | 狠狠av| 我要看一级黄色 | 亚洲久草 | 天堂福利影院 | 国产精品一区二区三区久久 | 一区 | 范冰冰一级做a爰片久久毛片 | 欧美日韩在线免费观看 | 亚洲国产高清视频 | 一区二区三区精品视频 | 久久久久久国产精品高清 | 亚洲国产精品一区二区第一页 | 亚洲国产精品久久久久久久 | 巨大黑人极品videos精品 | 成人精品久久久 | 日韩中字在线观看 | 久久99国产精品久久99果冻传媒 | 色成人免费网站 | 色综合视频 | 免费视频一区 | 免费日韩 | 国产精品视频一二三区 | 日韩一区二区三区在线 | 久久久久国产 | 在线观看亚洲精品视频 | 久草热8精品视频在线观看 亚洲区在线 | 国产高清亚洲 | 日韩视频久久 | 黄色一级电影免费观看 | 亚洲视频中文字幕 | 欧美成人精品在线观看 | 久久人人爽人人爽人人片av不 | 北条麻妃一区二区免费播放 | 免费观看毛片 | 免费毛片在线 | 91精品久久久久久久久中文字幕 | 成年免费视频 | 国产精品久久久久久久久福交 | 四虎影院观看 | 午夜在线电影 | 日韩手机电影 | 在线观看免费成人av | 久久久久久久久久久成人 | 成人爽a毛片一区二区免费 美女高潮久久久 | 一区二区福利 | 91免费在线视频 | 成人免费视频观看 | 午夜视频福利在线观看 | 亚洲精品一区二区网址 | 性做久久久久久久免费看 | av在线免费网址 | 天天综合永久入口 | 91久久精品日日躁夜夜躁国产 | 亚洲欧美激情精品一区二区 | 9久久婷婷国产综合精品性色 | 欧美一级淫片免费看 | 伊人电影综合网 | 国产大片黄色 | 国产精品99久久免费观看 | 91精品一区二区三区久久久久久 | 国产亚洲精品精品国产亚洲综合 | 久久九精品 | 久久成人免费 | 日韩一二三区视频 | 欧美一级网站 | 久久精品无码一区二区日韩av | 特级丰满少妇一级aaaa爱毛片 | 久久e久久 | 不卡一区二区三区四区 | 精品成人久久 | 国产超碰人人爽人人做人人爱 | 国产亚洲精品美女久久久久久久久久 | 91在线精品视频 | 色婷婷一区二区三区四区 | 中文字幕国产 | 久久青 | 午夜精品久久久久久久久久久久 | 日韩在线观看一区 | 在线a电影| 亚洲视频在线观看网站 | 亚洲一区二区三区视频免费观看 | 亚洲中国字幕 | 国产一区影院 | 亚洲不卡视频 | 国产精品亚洲视频 | 中文字幕在线播放一区 | 日韩欧美精品一区二区三区 | 日韩性网站 | 性视频黄色 | 欧美国产日韩在线观看 | 99精品99| 91av导航| 国产99久久久久久免费看农村 | 色综合久久伊人 | 国产老头老太作爱视频 | 国产超碰人人爽人人做人人爱 | 免费亚洲婷婷 | 精品无码久久久久国产 | 亚洲国产精品一区二区久久 | 国产一区二 | 国产人妖一区二区 | 国产在视频一区二区三区吞精 | 日韩中文字幕电影在线观看 | 中文字幕永久第一页 | 精品日韩一区二区三区 | 欧美日韩在线精品 | h在线免费 | 成人中文视频 | 国产第一二区 | 国产在线精品一区二区三区 | 中文字幕亚洲精品 | 亚洲精品18 | 人人人艹 | 成人午夜小视频 | 精品欧美一区二区三区久久久 | 日本a v在线播放 |