99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網運營的一線實戰(zhàn)洞察。

為什么 ThreadLocal 的 key 用弱引用?線程池內存泄漏源碼級拆解

為什么 ThreadLocal 的 key 用弱引用?線程池內存泄漏源碼級拆解 如果你在項目里用過線程池并且拿ThreadLocal做過上下文透傳大概率撞見過一個讓人撓頭的現象一次請求進來方法里new了一個ThreadLocal存數據請求結束線程回池子下一次請求隨機分配到了同一個線程代碼里同樣new了一個ThreadLocal去get()結果返回了null。第一次存進去的東西像是被誰悄悄摸走了一樣。反過來的坑也常見——線程池里的ThreadLocal值明明已經沒人用了卻一直占著內存不釋放最后把堆頂滿。這兩個現象看起來矛盾其實指向同一個設計ThreadLocalMap.Entry對 key 用的是弱引用。很多人面試時能背出“弱引用是為了防止內存泄漏”但追問下去就卡殼了防的到底是哪種泄漏換成強引用行不行軟引用行不行為什么偏偏是弱引用這篇文章我把這條線完整拆一遍從源碼到引用類型權衡再到日常編碼和線上排障一次性講透。1. 一個看似詭異的現象線程還在ThreadLocal 卻“失憶”了1.1 線程池中復現“第二次 get 返回 null”先看一個最小復現場景。假設有一個單線程的線程池兩個任務先后交給它執(zhí)行ExecutorService pool Executors.newFixedThreadPool(1); pool.execute(() - { ThreadLocalString local new ThreadLocal(); local.set(第一次請求的數據); // 方法結束local 變量離開作用域外部強引用消失 }); // 給 GC 留點時間比如 Thread.sleep(100); // 這里或者手動調用 System.gc() 幫助復現 pool.execute(() - { ThreadLocalString local new ThreadLocal(); String value local.get(); // null System.out.println(value); // 打印 null });注意兩個任務中的local是兩個不同的 ThreadLocal 實例。第一次任務里那個對象在任務結束后已經沒有外部強引用了第二次任務創(chuàng)建的是全新實例。有人會問ThreadLocalMap不是存在線程里嗎線程明明還活著為什么第二次get()拿不到關鍵在于線程里的ThreadLocalMap保存的可不是ThreadLocal對象的強引用。當第一次任務結束、外部對local的強引用消失之后下一次 GC 就會把這個 ThreadLocal 對象回收掉因為線程里只握著它的一根弱引用。第二次任務里的local是一個全新實例和原來那個對象沒有任何關系get()順著自己的哈希值找一圈找不到舊 entry只能走setInitialValue()返回初始值null。當然如果你的ThreadLocal是static的外部強引用一直在這個現象就不會出現——這也解釋了為什么后面要專門強調ThreadLocal定義為static。這兩個細節(jié)要關聯起來理解很多人就是栽在這里。1.2 真正回收的是什么一條完整的引用鏈路要把這個問題看懂得先把一條引用鏈畫出來。每個線程都持有一個ThreadLocalMap對象它內部是一個Entry[] table數組數組中每個Entry保存一個 ThreadLocal 的引用和一個 value 值。鏈路是這樣的Thread 對象 └── threadLocalsThreadLocalMap 實例 └── tableEntry[] 數組 └── Entry ├── key弱引用 - ThreadLocal 對象 └── value強引用 - 業(yè)務數據對象這里的核心點來了Thread對象到ThreadLocal對象的這條路徑不是一條強引用鏈。Entry對 key 的引用是WeakReference而引用類型決定了 GC 回收對象的規(guī)則。弱引用的特點是只要被引用的對象沒有其他強引用鏈GC 在下一次回收時就可以把它清掉不管內存夠不夠也不管“使用它的人”是否還活著。所以這條鏈路里真正決定ThreadLocal對象命運的不是線程而是外部代碼有沒有繼續(xù)持有這個 ThreadLocal 的強引用。線程只是提供了存儲容器但這個容器不會強行延續(xù) ThreadLocal 的生命周期。拿公告欄來類比線程池的線程像一面常駐的公告欄ThreadLocal像貼上去的便利貼但貼上去的膠水是弱性的——只要沒人手里還拿著同一張便利貼的強引用保潔員GC一來就把便利貼收走了公告欄本身怎么換人都管不著。理解了這條鏈路再看“弱引用為什么存在”就有了一半答案它設計出來的目的就是讓 ThreadLocal 對象的生命周期可以由外部引用控制而不是被線程鎖死。至于為什么必須這樣做下一章從源碼角度往下挖。2. 源碼層面的事實ThreadLocalMap.Entry 為什么繼承 WeakReference2.1 Entry 的定義和 ThreadLocalMap 的存儲模型直接看 JDK 源碼。ThreadLocalMap是ThreadLocal的靜態(tài)內部類真正的存儲結構是這樣的public class ThreadLocalT { static class ThreadLocalMap { static class Entry extends WeakReferenceThreadLocal? { Object value; Entry(ThreadLocal? k, Object v) { super(k); // key 以弱引用形式傳給 Reference 構造器 value v; // value 是普通強引用 } } private static final int INITIAL_CAPACITY 16; private Entry[] table; private int size 0; private int threshold; } }Entry繼承WeakReferenceThreadLocal?天生就是一個弱引用對象。Entry本身繼承的父類里存著referent也就是 key——ThreadLocal對象而value字段就是普通的強引用存業(yè)務數據。這種結構的技術術語叫“弱 key 強 value”是整篇所有問題的最根本出發(fā)點。ThreadLocalMap的存儲模型和HashMap有相似之處但差異更值得注意底層是Entry[]數組初始容量 16擴容時翻倍保持 2 的冪線程內每個ThreadLocal實例都有唯一的threadLocalHashCode這個哈希值通過AtomicInteger每次累加0x61c88647生成——黃金分割數保證不同 ThreadLocal 的 hash 分布均勻減少沖突。和HashMap不同ThreadLocalMap處理哈希沖突用的是線性探測法也就是向后逐個找空槽而不是鏈表。找到null位置后放入新 Entry。這個差異在get()和set()里都能看到尤其是get()時遇到“key 已被 GC 回收”的空槽要怎么處理后處理。2.2 這個結構把“誰引用誰”的關系反過來了平時我們寫代碼習慣是“我持有一個對象”。但ThreadLocalMap.Entry把這種關系倒過來了ThreadLocal對象不是擁有者而是被存儲方。線程里的threadLocals字段指向ThreadLocalMapThreadLocalMap又通過Entry持有ThreadLocal的弱引用。這段關系意味著什么看兩條生命周期線線程的生命周期可能很長。線程池里的線程往往和進程同生共死存活幾年都不稀奇。ThreadLocal 對象的生命周期通常很短。大多數業(yè)務場景下它只是一個局部變量方法執(zhí)行完、請求處理完職責就結束了。設計者面臨的矛盾是一個生命周期很長的容器線程保存了一個生命周期很短的對象ThreadLocal。如果采用強引用ThreadLocal 對象的存活時間就會被線程拉長到“線程死亡”的那一刻短生命周期對象被長生命周期容器“綁架”內存泄漏的根源就埋下了。弱引用在這里起的作用是解除綁定外部引用沒了GC 就能把 ThreadLocal 對象收掉線程的生命周期和 ThreadLocal 的生命周期不再互相拖累。一句話總結這段源碼設計意圖讓 ThreadLocal 對象“能用多久由外部決定”而不是“能活多久由線程決定”。2.3 hash 與探測弱引用也參與散列沖突處理弱引用不是簡單給Entry套一層殼就完事它還影響了ThreadLocalMap的內部操作細節(jié)??匆幌耮etEntry相關代碼private Entry getEntry(ThreadLocal? key) { int i key.threadLocalHashCode (table.length - 1); Entry e table[i]; if (e ! null e.get() key) { return e; } else { return getEntryAfterMiss(key, i, e); } } private Entry getEntryAfterMiss(ThreadLocal? key, int i, Entry e) { Entry[] tab table; int len tab.length; while (e ! null) { ThreadLocal? k e.get(); if (k key) { return e; } if (k null) { // 遇到了 key 已被回收的“臟 Entry”順手清理 expungeStaleEntry(i); } else { i nextIndex(i, len); } e tab[i]; } return null; }注意e.get()這個方法。WeakReference的get()返回的是被引用對象如果對象已經被 GC 回收get()返回null。ThreadLocalMap在遍歷探測時就是用e.get() key判斷當前槽位存的是不是同一個 ThreadLocal一旦遇到e.get() null說明這個 Entry 的 key 已經被回收了也就是“臟 Entry”此時會調用expungeStaleEntry(i)清理掉。這段代碼直接決定了弱引用設計的實際表現key 被回收后Entry 不會立刻消失只會在后續(xù)get/set操作時被“順路清理”。如果一直沒有人訪問這個槽位殘留的 value 就會一直躺在table里。這個特性我們后面還會展開。3. 換成強引用或軟引用行不行三種方案推演3.1 強引用的反例線程池存活十年ThreadLocal 泄漏十年假設設計者當初拍板Entry里直接放一個強引用 key。那會出現什么// 假如 Entry 是這樣 static class Entry { ThreadLocal? key; // 強引用 Object value; }此時只要線程活著ThreadLocalMap里的Entry就對ThreadLocal對象保持強引用。線程池的線程通常不會被銷毀業(yè)務代碼每次執(zhí)行都會new一個新的ThreadLocal塞進去于是線程的table數組里積累了一堆外部已經無人使用、但線程還強行引用著的 ThreadLocal 對象。它們既不能被業(yè)務代碼再利用GC 又收不掉這就是典型的 key 泄漏。更嚴重的是很多ThreadLocal是通過匿名內部類或 lambda 創(chuàng)建的這些對象內部會隱含引用外部類實例甚至通過.class字段間接引用ClassLoader。一旦 ThreadLocal 實例被線程強引用它背后掛著的整個引用鏈都會被“?;睢?。在 Web 容器、應用服務器里這可能導致整個應用/Web 模塊的ClassLoader無法被回收熱部署幾次后直接PermGen/Metaspace溢出。這類故障在早期的 Tomcat、Spring 框架里發(fā)生過很多次根本原因就只有一句話key 被長生命周期線程強引用了。3.2 軟引用的反例回收時機和“失去外部引用”不同步那改成SoftReference呢軟引用的回收規(guī)則是內存充足時不回收內存不足時才回收。聽起來好像也能兜底但仔細推演就知道不合適。ThreadLocal對象在業(yè)務代碼結束之后本質上已經“死亡”了我們希望它盡快被回收。但軟引用只在 JVM 內存緊張時才會清理。假設你的應用運行得好好的堆內存還非常寬裕那這些失去外部引用的 ThreadLocal 對象就會一直“詐尸”在堆里線程池越活躍堆積越多直到內存真的吃緊才被清一波——但那時候可能已經快 OOM 了清理壓力也大。更重要的是軟引用回收時機不可控。你沒法預測哪個 GC 周期會清掉它也沒法保證它在“外部引用消失后”及時讓get()返回null。這會造成一類更難排查的間歇性問題同樣的代碼這次能拿到值下次拿不到和內存占用水平強相關。作為語言內部的數據結構這種不確定性是不可接受的。弱引用完全不同——它不關心內存狀態(tài)只要外部強引用消失下一次 GC 到來時就回收行為確定、可預期。3.3 兩害相權取其輕弱引用選型邏輯把三種方案放在一起對比引用類型key 的回收時機后果分析強引用幾乎不回收除非線程銷毀ThreadLocal 對象隨線程存活key 泄漏可能連帶 ClassLoader 泄漏軟引用內存不足時才回收回收時機和業(yè)務語義不同步無法保證及時清理弱引用外部強引用消失后下一次 GC 即回收ThreadLocal 對象本身不泄漏value 可能殘留但可以配合 remove 解決這個對比能看出設計者的權衡保證 ThreadLocal 對象本身一定不泄漏是首要目標value 殘留是次要問題可以通過編碼規(guī)范兜住。弱引用恰好讓“ThreadLocal 對象的生命周期”回歸到“外部引用的生命周期”這正是它被選中的根本原因。很多資料把這段講成“弱引用能防止內存泄漏”其實不嚴謹。準確的說法是弱引用防止的是 ThreadLocal 對象key的泄漏它同時留下了 value 泄漏的隱患。這兩種“泄漏”在外面被混為一談但只要從三種方案對比的角度看誰防什么、誰擋不住什么一目了然。4. 弱引用引發(fā)的“次生災害”value 殘留和臟 Entry為什么還要 remove4.1 key 沒了 value 還在臟 Entry 從哪里來弱引用解決了 key 的泄漏卻帶來一個新的不對稱Entry 對象和 value 字段仍然是強引用。當 GC 把ThreadLocal對象回收后table數組里的那個 Entry 并不會自動消失它只是變成了“key 為 null”的狀態(tài)也就是臟 Entry。此時 value 對象仍然被 Entry 強引用著無法回收。假設有一個線程池線程 A 執(zhí)行任務時往某個static ThreadLocal里塞了一個 10MB 的緩存對象。代碼忘了remove()任務結束。ThreadLocal 對象因為是 static 的外部強引用還在不會被回收但 value 所在的 Entry 在 A 線程的ThreadLocalMap里永久存在。線程池線程如果一直復用這個 10MB 對象就會被“釘”在堆里一輩子。線程池有 50 個線程每個線程各殘留一份500MB 就沒了。臟 Entry 的產生過程和 static 與否沒有絕對關系但有一個共同前提存了值之后沒有 remove且后續(xù)又沒有別的get/set操作碰到這個槽位。只要滿足這個條件value 殘留就是必然事件只是時間早晚和內存大小的問題。4.2 ThreadLocalMap 的清理機制被動、局部、不保證你可能想問既然 key 都空了Java 為什么不自己把這些臟 Entry 全清掉答案在源碼里——它不是不想清而是只做了“被動清理”而且觸發(fā)條件有限。ThreadLocalMap里有一套清理機制主要包括三個方法expungeStaleEntry(int staleSlot)清理指定槽位的臟 Entry同時把后續(xù)因沖突而錯位的 Entry 重新哈希放入正確位置。cleanSomeSlots(int i, int n)從指定位置向后掃描找到臟 Entry 就調用expungeStaleEntry清理掃描次數是log2(n)有上限。replaceStaleEntry(key, value, staleSlot)set()過程中發(fā)現臟 Entry 時不新開槽位直接用新值替換掉舊槽位并完成清理操作。這些方法在get()、set()、擴容rehash()的過程中會被觸發(fā)。比如set()方法遍歷探測時遇到k null就會調用replaceStaleEntrygetEntryAfterMiss遇到臟 Entry 也會觸發(fā)expungeStaleEntry。但注意這些清理都是被動觸發(fā)的只有當某個操作恰好經過臟 Entry 所在的槽位時清理才會發(fā)生。如果線程后續(xù)一直沒有訪問這個 ThreadLocal對應的臟 Entry 就永遠躺在數組里。ThreadLocalMap不會在后臺掃描也沒有專門的線程去清理。這個設計取舍可以理解——為了性能把清理動作合并到常規(guī)操作里避免每次get都全表掃描。但代價就是你不主動清理就沒有人替你清理。4.3 remove 的底層實現為什么它能真正斷根既然被動清理靠不住主動權就得回到使用者手里。ThreadLocal.remove()的線程內調用鏈public void remove() { ThreadLocalMap m getMap(Thread.currentThread()); if (m ! null) { m.remove(this); } }ThreadLocalMap.remove的源碼private void remove(ThreadLocal? key) { Entry[] tab table; int len tab.length; int i key.threadLocalHashCode (len - 1); for (Entry e tab[i]; e ! null; e tab[i nextIndex(i, len)]) { if (e.get() key) { e.clear(); // 斷開 ThreadLocal 的引用讓 key 變 null expungeStaleEntry(i); // 清理 value并重新哈希后續(xù) entry return; } } }e.clear()是Reference類提供的方法直接把referent置為 null緊接著的expungeStaleEntry會把 value 也置空。所以remove()之后key 和 value 都不再被線程持有整個槽位恢復為 nullGC 可以正?;厥諛I(yè)務對象。這就是為什么所有規(guī)范都強調“用完必須 remove”——它是唯一能同時清理 key 和 value 的手段。我見過很多代碼只在finally塊里寫threadLocal.remove()就覺得很安心了但忘了如果 value 是一個巨大的對象集合不 remove 的直接后果就是線程池線程越多殘留越大。經典的 OOM 報告里堆內存分析顯示大量的byte[]或自定義業(yè)務對象被ThreadLocalMap引用基本就是這個原因。提示在 JDK 8 及以后的版本中ThreadLocalMap的被動清理邏輯已經比較完善但你永遠不應該依賴它“恰好幫你清掉”。它只是兜底不是保證。5. 這個“為什么”直接決定了使用姿勢從設計反推編碼規(guī)范5.1 凡是線程池環(huán)境try-finally 里必須 remove這段規(guī)范應該是每個 Java 工程師的肌肉記憶但背后的理由和弱引用設計是直接關聯的。線程池線程的生命周期極長如果不在finally里清理ThreadLocalMap 中的 Entry 就會長期殘留ThreadLocalUserContext context new ThreadLocal(); try { context.set(userInfo); // 業(yè)務邏輯... } finally { context.remove(); }為什么強調finally因為業(yè)務代碼中途拋異常、提前 return都會跳過remove()只有finally能保證“無論走那條路都執(zhí)行清理”。尤其在異步框架、消息處理器、定時任務調度器里線程復用非常頻繁一次殘留可能影響后續(xù)幾十次任務的數據隔離。這個寫法不是“規(guī)范好看”而是直接對應源碼里那個被動清理機制——你不動手沒人動手。還有一個容易被忽略的細節(jié)remove()之后再get()會返回初始值不會拋異常但如果你只是把ThreadLocal對象設為 null而不是調用remove()那 entry 還在value 殘留問題依然存在。清理對象和清理 ThreadLocalMap 的 entry是兩個層面的事。5.2 ThreadLocal 建議定義成 static 的底層原因“ThreadLocal 要定義為 static”這條最佳實踐很多人只當作教條背其實和弱引用也有關系。如果不是 static每個實例化的類對象都會創(chuàng)建自己的ThreadLocal實例線程里保存的 entry key 是各類實例特有的 ThreadLocal 對象。如果這個宿主對象被回收而線程還在弱引用 key 就會被回收——雖然不會造成 ThreadLocal 泄漏但會帶來一個更隱蔽的問題同一個線程里相同的語義字段可能對應多個不同的 ThreadLocal 實例容易傳錯或拿不到。而 static 的 ThreadLocal 由類的強引用持有ThreadLocal 對象本身永遠不會被 GC 回收key 始終有效同時全局只有一個實例語義唯一線程的get()才能穩(wěn)定命中。這是代碼層面最穩(wěn)妥的使用姿勢。注意static 并不能免掉remove()。static 只保證 key 不丟value 的殘留完全不受影響。很多人以為把ThreadLocal定義成 static 就安全了結果線上一跑內存就漲——因為 value 仍然由線程強引用和 key 弱不弱沒有關系。5.3 如何用工具確認 ThreadLocal 相關的內存殘留遇到內存異常上漲時如果懷疑 ThreadLocal可以按這幾步排查用jmap -histo:live pid查看存活實例重點看java.lang.ThreadLocal和java.lang.ThreadLocal$ThreadLocalMap$Entry的數量。正常應用里 ThreadLocal 實例數應該和業(yè)務類數量一個量級如果數量上千上萬說明有大量 ThreadLocal 對象沒被回收。用jmap -dump:formatb,fileheap.hprof pid抓堆快照再用 MATMemory Analyzer Tool打開。在 MAT 的Dominator Tree里搜索ThreadLocalMap$Entry可以看到每個 Entry 的 value 是什么對象、被哪條引用鏈保活。對比活躍線程數。如果Entry數量遠超活躍線程數幾乎可以斷定有大量臟 Entry 在數組中堆積。此時再定位每個 Entry 的 value 來自哪段業(yè)務代碼基本就能找到沒有執(zhí)行remove()的地方。這套排查流程我實際跑過不止一次。最典型的結果是某個攔截器、過濾器里往 ThreadLocal 塞了用戶信息或請求體然后忘了清理。內存畫像非常清晰——大量Entry的 value 指向同一個業(yè)務對象類型數量等于歷史請求峰值線程數。6. 面試與實戰(zhàn)怎么把這個問題講清楚、用明白6.1 一套直接可用的面試回答框架如果面試官問“為什么 ThreadLocal 的 key 要用弱引用”不要只回一句“防止內存泄漏”。按照下面這個順序答基本能覆蓋考點結構層ThreadLocalMap.Entry繼承WeakReferenceThreadLocal?key 是弱引用value 是強引用Entry 數組存放在線程對象的threadLocals字段里。生命周期層線程池線程存活時間長ThreadLocal 對象生命周期通常很短。如果 key 是強引用ThreadLocal 對象就會跟著線程一直活到線程銷毀短生命周期對象被長生命周期容器鎖死形成 key 泄漏。反證強引用尤其在線程池場景里線程不銷毀ThreadLocal 對象不回收。如果 ThreadLocal 是被匿名內部類創(chuàng)建的還會連帶引用外部類和 ClassLoader導致類加載器泄漏、熱部署內存溢出。軟引用不可行軟引用只在內存不足時回收回收時機和“外部引用消失”不同步無法保證及時清理。副作用與補償弱引用讓 key 可以及時回收但 value 是強引用所以線程里可能殘留臟 Entry。被動清理機制只在 get/set 時觸發(fā)不可靠工程上必須用remove()在 finally 中顯式清理。實踐結論ThreadLocal 定義成 static 保證 key 穩(wěn)定線程池環(huán)境必須 try-finally remove不要依賴隱式清理。這套答法從源碼走向設計權衡再落到工程實踐每一個追問都有內容接得住。關鍵是第 5 點它能區(qū)分“背過結論”和“真正理解設計”。6.2 我在線上排查時遇到的一個真實場景最后分享一次實際排查經歷。當時的現象是一個網關服務運行幾天后堆內存持續(xù)上漲最終 OOM。抓了 heap dump 后看到大量ThreadLocalMap$Entry的 value 指向一個自定義的UserPermission對象數量在幾千左右。順著引用鏈往回追發(fā)現是一個權限校驗攔截器把所有請求的用戶權限信息塞進了 ThreadLocal但攔截器是在preHandle里存入在afterCompletion里忘記刪除。網關的線程池線程處理完請求后回池下個請求復用了同一個線程——雖然中間也會調用權限校驗但并不是每個請求都會走到同一段代碼路徑臟 Entry 越來越多最終把堆頂爆。修復很簡單在攔截器的afterCompletion里補上remove()。但這個問題背后真正值得記住的是ThreadLocal的弱引用設計防住了 key 泄漏卻把“是不是會泄漏”的決定權交到了每個開發(fā)者手里。設計者無法替你寫remove()只能通過引用類型的選擇把最危險的那部分風險——ThreadLocal 對象和 ClassLoader 被長周期線程釘死——從語言層面排除掉。剩下的價值管理是使用者的責任。所以“為什么用弱引用”這個問題的完整答案其實是一份設計說明書它告訴我們這個數據結構會在什么時候幫你兜底又會在什么時候需要你親自出手??炊@一層面試時你能侃侃而談排障時你能一眼定位問題。這個知識點值得好好吃透。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
热99re| 五月天色婷婷激情| 中文字幕人妻一区二区| 深夜男女福利刺激影院一区完整| 婷婷五月激情天| 五月丁香啪啪激情| 五月天天久久香| 亚洲视频五区| 久久99久久99精品免观看粉嫩| 国产激情视频在线观看| 丁香五月婷婷AV| 婷婷五月天Av| 激情六| 偷偷操九九| 六月婷婷五月天| 婷婷中文网站| 天天爱天天做天天舔| 九九成人电影婷婷| 亚洲精品V天堂中文字幕| 激情五月丁香亭亭| 狠狠色综合网站久久久久| 激情丁香六月| 97在线/亚洲| 97丁香视频| 婷婷久久综合| 另类小说五月天| 综合伊人久久| www.久久爱.com| 狠狠激情五月天| 丁香五月成人论坛| 丁香色啪综合| 日韩av干| www激情网| 日日骑夜夜撸| WWW丁香五月| 在线色色| 色一区高清| 五月婷精品| 9精品视频在线| 乱乱av| 色婷婷影院| 99久在线精品99re8热| 热思思| 婷婷热婷婷色| 婷婷香五月综合激情| 日本在线视频手机播放五月婷| 精典久久| 久久中文人妻系列| 777精品成人a v久久| 色综合久久五月| 插插插丁香五月婷婷| 丁香五月婷婷激情小说| 五月天婷婷青青| 天天爽爽日日做做| 情涩婷婷五月天| 婷婷六月插屄激情| 五月婷综合| 夜夜撸天天日| 久久与婷婷| 综合激情在线| 性色做爰片在线观看WW| 色亭亭九月| 五月婷综合激情| 操人视频91| 丁香婷婷综合激情五月色| 久久伊人婷| 亚洲视频1区| 色99在线看| 毛片新网地| 99色综合| 天天干天天操| 亚洲精品视频在线| 9视频在线成人网站| 午夜天堂一区人妻| 综合99视频| 啊v视频在线观看| 超碰碰碰碰| 月月AV| ss99热| 婷婷五月18永久免费视频| 第四色婷婷丁香五月| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 1囯产午夜仑鲁鲁| 五月天丁香综合在线| 精品九九婷婷| 九九热在视频| 日本一级一片免费视频| 国产99久久久国产精品免费看 | 看全色黄大色大片| 丁香五月婷婷色五月| 99思思热只有在这里看| 激情综合色| 荫道BBWBBB高潮潮喷| 日韩国产AV播放| 伊人色综合久久久| 婷婷五月丁香综合人妻| 天天综合在线网| 成人午夜天| 99久久終合| 丁香六月婷婷开心| 免费在线观看欧美激情xx小视频| 熟女人妻一区二区三区免费看| 男女啪啪视频久 9| 婷婷五月 丁香六月| www五月天com| 夜夜嗨一区二区三区直播内容| 亚洲啪啪精品| 六月婷婷国产| 香蕉久久国产AV一区二区| 超碰A V在线| 亚洲AV人人操| 欧美丁香五月夫妻天| 99精品热| 99小视频在线| 久月婷婷| 97碰碰视频在线观看免费| er99免费视频在线| 伊人综合网站| 亚洲激情亚洲激情 | 五月天开心网| 奇米影视在线视频| 天天日夜夜爽。| 99久热这里只有精品| 99久久婷婷综合| www.xtbsty.cn.com蜜乳AV| 精品久久艹| 精品无码久久久久久久久| 青青草tp| 99热这里只有精品22| 9999热免费视频视频| 激情五月图| 欧美大香蕉视频| 色综合99色| 亚洲综合丁香五月| 96自拍视频九色在线观看| 97热这里精品在线视频| 激情婷婷五月| 五月天大香蕉| 婷婷五月天成人| 人人干99| 原琪琪色影院| 婷婷五月天AV| 饮料下药迷倒漂亮女同事强干| 色色色区| 97在线碰| 激情图片亚洲| 欧美槡BBBB槡BBB少妇| 色婷婷综合网| 538在线精品| 丁香五月婷婷深爱综合激情| 婷婷久久综合| 婷婷丁香五月天中文字幕| 极品少妇高潮啪啪AV无码| 婷婷色婷婷亚洲成人| 啪啪综合| 好好日激情五月天| 淫视馆av三区| 99无码精品| 夜夜骑天天操| 非洲一级AV| 天天天天干| 操人精品| 婷婷99| 亚洲另类在线观看| 狠狠ri| 五月婷婷深爱六月| 9久操| 日本成人噜噜噜| 伊人久久大香| 丁香五月伊人| 可似看的AV| 97ai婷婷| www.yw尤物| 六月婷婷狠狠色在线观看| 久久久婷| 久久精品视频在这里有| 国产成人AV在线| 99综合免费视频| 激情五月综合网| 精品一二三区久久AAA片| 伊人丁香五月| 精品99在线看| 国产69久久久欧美黑人A片| 激情五月色综合国产精品| 国产真实乱了老女人视频| 婷婷激情五月综合在线视频| 婷婷色情网| 丁香五月大香蕉| 丁香五月宝贝激情网| 婷婷六月激情综合| 色婷婷电影网| 五月天网站亭亭| 97资源欧美日韩大香蕉超碰一区| 三年高清大片免费观看国语| 亚洲六月色婷婷| 亚洲中文字幕在线观看| 另类激情首页| 人人射av| 色噜噜狠狠色综合AV兰草影视| 少妇人妻偷人精品无码视频新浪| 欧洲一区二区| 狠狠五月综合在线| 七七九九色色| 日本啪啪天堂| 综合www色| 狠狠综合网| 99re最新地址| 五五月五月| www激情网站| av九九| 天天狠狠夜夜狠狠2023| 久久五月天黄色五月天色网址| 激情婷| 亚洲爆乳无码精品AAA片蜜桃| 亚洲成人人人操| 五月丁香婷婷综合网| 久久99热网| 色私五月婷婷| 国产日韩欧美| 婷婷丁香激情| 丁香五月天av| 草操AV在线| 成人在线网站| 丁香五月开心亚洲| 97婷婷五月| 激情q青青草在线婷婷| 狠狠九九婷婷韩| 爱射综合| 色丁香五月| 激情五月天偷拍综合网| 色婷婷丁香| 夜夜涩涩涩| 伊人网碰碰| 殴美97色| 色婷婷久久7777| 久久精彩视频| 91九色首页| 久久激情五月婷婷| 91se在线视频| 日日爽日日| 色域五月婷婷丁香| 五月婷婷六月天| 天天干天天爽| 亲子乱AV一区二区三区下载| 国産精品| 五月婷婷啪啪啪| 99这里只有精品视频| 婷婷五月天综合色| 79色色色色| 五月丁香久久激情网| 新久久五月天激情| 另类小说五月天综合| 99久久久国产大片| 在线综合婷婷| 五月天激情社区| 激情五月www| 五月婷六月天| 五月婷视屏在线观看| 99热观看| 激情亭亭五月| 91色婷婷综合久久中文字幕二区| 26uuu国自产精品| 六月丁香av| 亚洲旡码| 久久黄色免费视频| 热99只有里视频| 综合婷婷五月丁香在线观看| 五月色亚洲| 深爱激情五月网| 久久精品这里只有精品免费首页| xx久久| 婷婷情色五月天| 午夜色婷婷| 激情丁香五月天| 丁香午夜天| 五月婷婷六月天| 人妻AV在线| 国产成人片| 无码人妻丰满熟妇奶水区码| 一本九九色| 色色九九五月天 | 久久五月婷6 9| 日韩啪啪视品| 97操操操| 亚洲狠狠狠| 色五月av| 思思热久久婷婷五月天| 五月天天天色| 99亚洲精品视频| 桃色五月天| 综合久久五| 中文字幕网站在线观看| .操區COm| 五月天亭亭俺也| 婷婷五月综激情| 色综合久久888| 超碰婷婷色| 超碰色女人| 日本va欧美va欧美va精品| 狠狠久久婷五月综合色| 亚洲成人AV在线播放| 久久99网站| 97婷婷五月丁香| 色婷婷六月天| 色在线视频网2025| 免费看欧美成人A片无码| 亚州第一黄网| 色99亚洲| 97久久人人操| 99在线爽| 丁香五月网在线观看| 99热99极品观看| 538在线精品| 在线观看免费狠狠色丁香香综合| 人人看人人草人人摸| 99超级碰碰| 蜜桃五月天| 婷婷丁香五月色偷偷| 色综合爱综合| 淫视馆aV二区一区| 另类视屏| 天天操人人干| 五月天丁香啪啪网| 日日干日日s| 婷婷五月大香蕉| 九热网站| 影音先锋人妻出差| 性生生活大片又黄又| 久久 婷婷 五月天| 日韩精品999| 色婷综合| 国产偷人妻精品一区| 欧美99| 日韩成人电影在线播放| 99久久五月婷婷| 婷婷五月欧美综合| 亚洲色域网| 五月天婷婷在线视频| 亚洲有码在线视频| 91人人操.COM| 狠狠色噜噜狠狠| 91狼友视频网页更新| 天天玩天天摸| 丁香五月偷拍| 色爱综合视频| 色欲一区二区三区精品A片| 日本视频99| 99热a片免| 大香蕉伊人丁香五月| 九九人妻福利| 久久综合激情| 丁香桃色综合网| 99视频自拍| 五月婷婷色色| 五月天激情小说| 性爱网久久| 人人草人人爱| 亚洲色婷婷激情| 激情五月丁香五月| 激情综合激情五月| 九色1区视频在线| 五月婷婷丁香在线| 婷婷色五月开心五月| 五月天婷婷基地| 人妻激情视频| 99狠狠操一| 亚洲综合在线伊人婷| 亚洲永远av在线播放| 91chinese 在线| 五月丁香黄色| 91人人爱| www.激情| 大香蕉五月天婷婷| 国产99久久久| 免费视频舔| 日本三级日本三级99| 97视频91| 成人在线精品| 婷婷色五月天在线观看| 色色婷| 色欲色香伊人| 婷婷综合五月天| 伊人久久艹| 丁香五月自拍| 色色色色色色综合网| 五月天综合区| 97艹| 日本婷婷| 大陆肏屄视频| 亚洲精品国产成人AV在线| 中文AV网| 天天爱夜夜爽| 日本99视频| 成人视频网| 99热的无码| 最新日韩久热免费视频看看| 婷色五月天| 很很干五月天| 欧美精品啪啪| 色婷婷激情五月天丁香| 超碰在线9| 第四色色六月色综合| 国产午夜成人免费看片无遮挡| 婷婷五月图片小说视频| 日本久久网| 欧美特大片黄| 99色天堂| 婷婷五月激情在线视频| 《诡秘之主》在线观看| 操逼综合激情网| 婷婷少妇激情| 婷婷五月色综合| 91尤物九色在线| 久色网| 97 A I色色| av大香蕉| 91日日日| 婷婷情色五月| 亚洲综合激情五月久久| 婷婷99丁香| 久久精品系列| 97好吊操| 思思热在线视频观看精品| 丁香婷婷激情四射五月| 97色婷婷| www色五月| 五月丁香龟婷婷| 欧美久久婷婷| 婷婷色基地在线看| 夜夜穞天天穞狠狠穞AV美女按摩| 九九在线精点品| 丁香八月综合激情| 色色日韩| 激情久久综合| 97色97干| 婷婷综合玖玖五月| 任你躁XXXXX麻豆精品| 精品人妻伦一二三区久久| 日本va网站| aaa久久| www婷婷色| 91久久久久久| 99色精品| 成人免费在线电影| 热99在线| www激情com| 婷婷综合成人五月天| 婷婷精品免费久久| 久热 91| 狠狠噪| 俺去也综合| 97人凄人人操人人爽| 天天谢天天操| 国产精品A片| 色五月天天| 五月天国产成人| 色久女| 丁香六月欧美| 操逼五月天| 2015在线中文字幕| 精品无码片| 一本到不卡高清DVD| 激情五月婷| 成人日韩欧美| 久热伊人| 另类在线免费视频| 色婷婷播放| 91色情播放| 日本成人小说婷婷六月| 五月六月婷婷| 激情五月天视频| 美国十月色婷婷在线观看| 五月天综合婷婷| 婷婷五月色播放| 亚洲久久激情| 97人人做| 天天骑天天操| 久久视频在线视频| 亚洲9久久精品| 久久aaaaa| 色婷婷久久天天性爱| 激情丁香社区| 九九视频精品在线免费| 久久人妻伦理| www.久久| 国产黄色在线| 射久久丁香五月| 国产免费AV网站| 九九国产精视频| 激情五月综合六月丁香婷婷狠狠干| 极品 少妇 内射| 国产精品A片| 五月天婷婷成人| 色三级色三级| 免费视频无码| 中文字幕在线不卡视频| 久久久91| 色五月视频无码播放| www.五月天激情| 中文字幕综合| ..真实国产乱子伦对白在线_欧 | 日本操B视频| 97色女人在线| 亚洲国产精品二二三三区| av免费在线观看0| 九九热在线99| 99热在线中文字幕| 人妻视频在线| 久久xx| 九九综合网| 亚洲五月婷| 西瓜美女a片| 婷婷成人五月天成人文学| 色婷网| 中文字幕 码精品视频网站| AV在线不卡播放| 丁香五月婷婷欧美激情-中文天堂最新版在线观看| 色播六月| 99网99热| 9这里只有精品| 99热色精品| 久久久久久久人妻| 五月婷婷激情性爱| 丁香六月激情国产| 少妇被下春药玩弄A片| 五月激情久久| 天天干天天操天天上| 啪啪99| 九月丁香网婷婷| 人妻操逼视频。| 亭亭五月色男人| 99热这里只有精品55| 久久一伦| 色色欧美色色| 中文字幕免费高清电视剧| 综合色色综合| 99在线精品视频免费观看20| 风流少妇A片一区二区蜜桃| 五月婷婷深深爱| 国精产品一区二区三区| 超碰在线国产| 综合色情网| 五月天开心激情综合网| 中文字幕成人网站| 丁香 婷婷五月| 欧美综合五月丁香六月婷| 久久婷婷五月综合色区| 日本婷婷综合精品| 五月天伊人| 色噜噜夜夜夜综合网| 五月婷婷自拍| 9视频在线成人网站| 九九蜜臀精品| 亚洲男女激情| 激情五月激情综合俺也去婷婷小说| 色五月婷婷综合在线| 日本91在线播放| 亚洲综合丁香婷婷六月天| 99性色| 大香蕉婷婷五月天| 婷婷色在线观看| 五月天伊人综合| 九九热视频在线观看| 亚洲成人在线观看网址| 五月天精品综合| 在线18av | 熟女五月天久久综合| 狠狠狠狠狠干| 色亚洲视频| 国产FREESEXVIDEOS性中国| 开心婷婷中文字慕| 色色色色综合网| 五月婷婷干干干| 天天干天天拍| 我要色综合五月婷婷| 色噜噜综合网| 婷婷丁香五月天综合网| 免费视频WWW在线观看网站| 玖玖在线资源视频| 免费超碰在线观看| 99亚洲日韩| 九九热99在线视频| 久99综合婷婷| 五月天婷婷黄色视频| 久久综合九九| 九九视频热| 无码AV大香线蕉伊人| 欧美人妻一区二区| 玖玖99免费视频| 啪啪91| 99热精品网| 精品欧美性爱超级爽| 婷婷五月天干干| 久久丁香九| 秋霞性爱AV| 热久久思思热思思| 亚洲综合视频八| 操操自拍| 久久与婷婷| 五月激情婷婷偷拍| 九九精品综合| 可以直接看的av网站| 五月天婷婷无码| 97碰碰在线观看视频| 黄色大片又大粗又爽| 天堂伊人干| 天天做夜夜爽| 在线VA视频| 中文在线视频久9| 超碰人人艹| 色婷婷丁香五月在线| 久久月天堂| 狠狠综合网| 人人综合五月人人婷婷| 五月天丁香网站| 免费观看全黄做爰的视频| 色噜噜狠狠插综合| wWw色五月| 丁香六月色| 色五月激情综合网| 五月丁香激情综合久久| 大功率国产在线| 9久9久9久女女女九九九一九| 97热精品| 99愛国产| 热久久77777| 婷婷五月综合色中文字幕| 青青草成人网| 综合啪啪| 日韩在线婷婷五月天综合| A片一曲| 国产女18毛片多18精品| 九九热九九| 婷婷丁香六月天| 精品99爱免费视频在线观看| 婷婷色中文字幕| 五月色婷丁香| 97亚洲视频在线| 久草五月天| 婷婷色色婷婷| 五月丁香龟婷婷| 在线,国产,色,热视频| 丁香六月婷婷久久高清| 99日本视频在线观看专区| 欧美色色色| 色婷丁香| 外国碰视频网站97| 99色色视频| 久久激情五月网| 久久er+| 激情五月婷黄版| 亚洲成人av在线| 人人操人人看97干| 狠狠色婷婷色| 99久99久| 久久九久久| 欧美成人AAA片一区国产精品| 色五月六月| 九九99九九99九九99视频网| 人人操五月天| 狠狠色丁香| 五月天精品视频| www.五月天。com| 99 这里只有精品| 怡红院院在线导航网 | 狠狠色噜噜色狠狠狠综合久久成人波 | 激情欧美五月丁香| 六月五月婷婷| 九九精品在线网| 亚洲噜色| 色婷婷视频在线| 激情五月色在线播放| 色播丁香婷婷五月激情| 亚洲九九在线| 日韩在线五月天婷婷| 99精品7| 色五月丁香六月婷婷| 五月婷婷深爱六月| 99爱在线视频观看| 天天天天天天操| 丁香五月伊人| 九九五月天| 伊人五月天在线| 天天爽天天操| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 性色欲情 网站| 无码网| 天天在线天天综合网色| 五月丁香久久丝袜啪啪| 激情五月六月婷婷| 97操碰视频| 五月天激情久久| 亚洲综合五月天婷婷丁香| 国产3p露脸普通话对白| 亚洲岛国电影| 久操干| 第四色婷婷日本| 久久婷五月综合色| 99视频这里只有精品10| 99ri精品视频在线观看| 五月丁香| 成人VAV视频在线观看| 97五月婷婷| 亚洲国产精品成人免费一区久久久在线观看AAAA | 大香蕉人妻| 丁香综合伊人AV| 丁香五月在线| 天天插天天爽| 激情玖玖综合网| 色综合久久99色| 婷婷亚洲激情在线观看视频 | 九九这里有精品视频| 丁香五月av在线| 久久小视频| 天天干,夜夜爽| 五月色情婷婷| site:hcxsz888.com| 色婷婷色五月综合| 影音先锋色婷婷| 一本大道伊人AV久久综合| 久久 中文 日本| 久久99精品久久只有精品| 人妻丰满精品一区二区A片| 色都都狠狠色都都色综合色| 成片免费观看视频大全| 久狠日av| 色情五月婷婷| 一本色道久久88加勒比—| 97色色色视屏| 九九热99免费视频| 五月天操逼激情| 久久久久9| 97婷婷五月| 夜夜谢天天干| 日韩操女| 综合图区激情| 99热只有| 九九热中文| 人人爱人人摸人人澡| 激情五月天影院| 婷婷久久五月天中文字幕在线观看| 色婷丁香五月| 99热都是精品| 日本精品干| 99国产小视频| 亚洲经典三级| 综合欧美五月婷婷| 色综合色五月| 一操久久| 97丁香五月| 嫩草极品| 在线五月色播| 婷婷五月天社区| 五月激情婷婷综合| 日本理论久久| 热久久视频99| 嫩草AV久久伊人妇女超级A| 五月婷婷天堂| 99精品视频免费观看| 中文字幕婷婷9月天| 五月婷婷在线视频免费观看| 香蕉综合在线| 免费AV在线| 99热这里只有精品在线观看| 91 久热| 男女久久婷婷五月天| 99综合网| 九九九九九无码| 9久久精品| 五月天丁香啪啪综合| 任你草| 色五月婷婷中文字幕| 超碰激情网| w婷婷五月婷婷w| 97热这里精品在线视频| 欧美色97| 婷色五月天| 色狠狠综合| 老司机日日夜夜青草| 婷婷在线视频| 人妻少妇色综合| 久久99这里只有精品| h在线看免费版在线看| 好好干Av| 日产精品一线二线三线芒果| 千人斩操逼| 亚洲日本韩国| 婷婷五月噜噜| www亚洲无码| 婷婷丁香五月综合| 欧美97色| 性做久久久久久久免费看| 综合久色五月| 久久桃花网色婷婷| 91成人性爱视频| 超碰在线超碰| 色色激情五月天| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 五月婷俺去也| 中字幕视频在线永久在线观看免费| 96人人操人人操人人| 熟女少妇内射日韩亚洲| 99色热视频| 人人操婷婷| 久热这里| 人妻人人操| 香蕉久久国产AV一区二区| 激情网五夜婷婷| 五月婷婷爽爽爽| 五月亚洲| 精品思思久久| 五月婷婷黄色网址| 六月丁丁香| AV堂狠狠干| 五月天福利影院导航| 国产视频婷婷| 婷婷五月大| 久久精品国产AV一区二区三区 | 久久久久久久合一狠狠做深爱| 婷婷五月天首页激情| 超碰成人电影| 色五月丁香婷婷综合| 北条麻妃伊人| 色婷久久| 亚洲色色色色| 全高清无码视頻| 八戒青柠影视剧在线观看 | 激情床戏| 五月五丁香婷婷| 97自拍99| 91九色最新视频| 久久天堂| 六月丁花香啪啪激情欧美| 日本天天操| 五月情丁香色| 激情婷婷九月| 最近中文字幕2019视频1| 色色a| 综合久色五月| 亚洲乱码在线观看| 97日本操| www.色99| 99热爱爱干干日| 99er6热在线观看精品6| 狠狠色婷婷| 国产小网站| 人妻无码视频网| 日日.c| 月婷婷婷婷五月| 色播五月丁香综合| 日韩黄黄| 婷婷丁香五月激情密臀av| 国产伦亲子伦亲子视频观看| 天天搞天天色综合| 五月婷婷激清网| 人人草成人视频| 99伊人性爱在线影院| 婷婷色一二三区波多野结衣| 免费在线a| 九九热超碰| 99在线视频精品| 亚洲第79页| 婷婷在线操| 九九久久五月天综合伊人| 色综合激情图区| 丁香六月婷婷久久综合| 色色五月天丁香婷婷| 香蕉AV777XXX色综合一区| 狠狠看狠狠| 任你艹| 午夜九九九九九九九九九九九九九| 色99最新网址| 欧美成人AAA片一区国产精品| 五月综合色| 亚洲99综合| 97五月久久丁香婷婷| 欧美丁香婷婷五月天| 欧美97p| 色综合性视频| 激情五月无码| 日本无va视频| 26uuu色噜噜精品一区| 九九国产视频| 午夜成人AV在线| 婷婷久久久久| 99九九精品视频| 99爱99操| 97九色| 婷婷精品在线| 玖玖综合色| av色婷婷| 69精品人人人人| 噜噜噜噜噜久| 久久五月天激情婷婷| 深爱五月综合网| 人妻内射麻豆视频| 狠狠色丁香婷婷基地| 精品色色网| 久久性爰视频这里只有精品| 丁香五月色五月婷婷宗合| 久久久99精品| 婷婷色激情五月天| 狠狠九九婷婷韩| 久久日九九| 97电影99热| 激情综合无码| 丁香五月天天| 五月婷在线色视频| 成人综合伍月天| 欧美婷婷精品激情| 97干视频在线| 婷婷五月天精品| 天天射影院| 粉嫩AV久久一区二区三区| 无遮挡国产高潮视频免费观看| 亚洲日韩一页精品发布| 国产99久久久国产精品免费看| 疯狂做受XXXX高潮A片| 丁香五月天AV在线 | 99热最新国内| 久久亚洲天堂| www久久久| 求可以看的AV网址| 99热这里只有精品1| 九九色人| 国产欧美熟妇另类久久久| 日B日潘金莲BB| 玖玖精品婷婷| 伊人丁香六月婷婷| 欧美激情综合色综合色| 99视频在线精品| 精品人妻一区二区三区四区不卡在| 国产午夜精品AV一区二区麻豆| 69天堂99| 国产 亚洲 在线| 白天AV月月| 五月丁香六月婷婷激情网| 色综合色| 99re欧美精品| 久久久婷婷五月亚洲97号色| 天天做天天爱天天爽夜夜揉| 亚洲国产精品综合色区| A片一曲| 欧美性生交XXXXX无码小说| 91人人妻人人操人人爽| 狠狠五月激情丁香六月| 99视频地址| 99热6精品| 亚洲综合色网| 在线观看亚洲AV| 激情综合网,五月| 五月天婷婷AV| www。久久久久一b。Cc| 激情久久久久久久久久久| 中文无码精品一区二区三区| 色婷婷五月天成人网| 中文字幕按摩做爰| 9精品视频在线观看| 丁香五月激情月| 激情爱爱网站| 色婷网站| 涩涩涩,com| 五月天激情网图片| 99网| 91婷婷色五月| 99免费视频网| 欧美肉大捧一进一出免费视频| 国产黄色一级片| 天天拍久久| 久久人妻精品| www.久久爱.com| 日日爽日日爽| 中文字幕在线观看视频www| 亚洲午夜Av| 婷婷五月天亚洲综合| 久久九九综合| 久久久999精品| 婷婷成年人免费视频| 国产午夜成人AV在线播放| 激情六月丁香| 99色色视频| 玖玖婷婷五月天毛片| 无码一区二区三区四区五区| 丁香五月av| 97久久婷婷色| 色久婷婷网| 能看的av网站| 日韩AV在线免费观看| 婷婷丁香五月在线播放| 五月婷婷爽爽爽| 色色色在线免费视频| 五月天色社区| 亚洲AV综合在线观看| 日日噜噜夜夜狠狠久久丁香六月| 色色综合网www| 九九成人高清视频| 婷婷五月天成人| 婷婷五月天激情网| 久久总和99| www.九九婷婷| 99热这里只有免费精品| 久久婷婷免费| 开心五月婷| 丁香五月婷婷激情四射深爱激情| 91免费在线视频6| 激情深爱五月天| 天天干夜夜操A片| 狠狠穞A片一區二區三區| 国产67194| 国产超碰在线| 丁香五月婷婷狠狠色| 97人人操人人爽| 亚洲精品视频在线| 996er热| ri电影在线| 国产精品久久久久久亚洲毛片| 丁香婷婷五月天亚洲| 女人天堂AV| 99热精品在线| 丁香五月成人论坛| 777米奇影视第四色| 丁香伊人综合| 大色鬼综合| 久久五月激情| 伦99热| 九九久久精品| 97五月天婷婷午夜| 另类在线免费视频| 成年人看Va免费视频| 亚洲无码激情| 婷婷天堂综合| 99这里只有免费的精品| 99热久久这里只有精品| 丁香九月婷婷色| 97人妻碰碰碰久久| 99视频精品| 亚洲视频色色| 日本色超碰| 日本爆乳片手机在线播放| 色婷婷亚洲| 国产精品第一国产精品| av人人操| 超碰色婷婷| 这里只有精品视频| 大伊久久| 久99热在线观看| 亚洲色综合| 日日日天天干| 婷婷成人综合| 国产69久久久欧美黑人A片| 99免费视频在线观看爱| 欧美天天搞| 久热9| 色五月婷婷激情| 五月丁香激情四射综合| 久久综合五月天| 色婷五月天激情| 大香蕉久久| 日韩欧美成人网| 日本三级中国三级99| henhencao国产在线| 综合激情九月婷婷,激情综合婷婷中文字 | 99ri视频| 日韩欧美骚货| 日日噜噜夜夜狠狠久久丁香六月| 亚洲国产精品二二三三区| 日日操夜夜撸| 狠狠干天天内射| 亚洲四色五月| 婷婷99狠狠躁天天躁| 人人摸人人搞| 色色啊| 久99热在线观看| 久久AV无码精品人妻系列试探| 狠狠干在线| 五月婷婷六月激情在线| 九九综舍久久| 色色欧美色色色| 91人妻人人做人碰人人爽九色| 丁香五月天无码| 99热自拍| 婷婷五月激情综合啪啪| 丰满人妻一区二区三区| 精品爆操| 五月噜噜| ww亚洲ww在线观看| 成人在线高清| 夜夜操加勒比| 人妻啪啪啪| 中文字幕丰满人妻无码专区| 日日激情网| 婷婷久久婷婷色五月| 天天操五月天| 伊人狼人干| 亚洲天堂久久| 欧美色图天堂网| 五月天婷婷乱论小说| 亭亭色天香| 天天爽天天爽天天爽天天爽天天爽| 噜噜狠狠色综合久| 久久九九激情五月天 | 九九热经典视频在线观看| 婷丁五月| 97干视频| 99狠狠| 9一精品视频观看| 97色五月婷婷在线| 99久视频| 五月丁香啪啪综合| 久久久性爱视频| 久青草影院| 色色色色av色色色色| 五月社区婷婷激情| 这里有精品99| 丁香婷婷黄网站| 综合99久久天天综合| 亚洲人成网站999久久久综合| 琪琪色五月婷婷老师| 开心五月婷婷| 激情五月婷| 欧美日韩成人| 色婷婷电影网| 婷婷五月丁香久久| 久热 91| 丁香婷婷五月色成人网站| 日日操夜夜撸| 天天爽天天操| 婷婷丁香十月| www.激情五月| 五月婷婷激情综合| 五月激情在线| 日日操夜夜爽| 99视频这里有精品| 99热只有| 人人九色| 嫩草视频在线观看| 99热国产精品| 99热6精品| 99色色视频| 91九色首页| 国产做爰视频免费播放| 激情又色又爽又黄的A片| 夫妇交换刺激做爰| 无码91中文字幕| 五月天婷婷无码| www.99久久久久99| 99丁香五月婷| 97人妻碰碰中文无码久热丝袜| 丁香婷婷人妻| 6月丁香婷婷激情| 五月综合激情视频| www.日日夜夜.com| 人人综合久| 99免费在线| 日韩中文字幕| 99热黄| 超碰二区| 九九热在线亚洲免费视频| 4399在线观看免费高清电视剧| 五月丁香六月激情狠狠| 婷婷五月六月激情| 欧美精品18| 99久久久| 欧美性生交XXXXX无码小说| 日韩日比视频在线| 色欲影香| 精品无码av丁香五月激情| 婷婷五月天熟妇| 五月丁香婷婷免费视频| 婷婷伊人| 国产免费性爱| 欧美性爱一区| 欧洲婷婷五月天| 丁香婷婷婷五月| 色色综合网站| 色哟呦av| 99日逼视频| 嫩草综合网| 五月丁香综合网| 婷婷爱五月天| 97碰碰叉| 丁香六月色婷婷| 激情 婷婷 丁香五月天| 五月天婷综合| 国产精品VIDEOSSEX久久发布| 久久色吧| 五月天天天综合| 五月激激激情综合网| 欧美婷婷丁香五月社区| 欧美叉叉叉BBB网站| 丁香花成人区| 色婷婷丁香五月在线| 成人va视频| 99免费在线视频| 丁香五月婷婷Av| 激情久久天天| 久9热在线视频| 亚洲九九99精品视频在线播放| 成人视频一区| 99热这里| 欧美va亚洲va在线播放| 91超碰在线播放| www免费在线视频| 五月激情综合网| 成人超碰Av| www.久久| 中文资源在线a| 婷婷综合色播网| 99成人| 五月天天堂久久| 26uuu亚洲欧美| 婷婷五月天成人网| 九九热91| 思思热再线视频| 日韩成人免费电影| 五月天大香蕉AV| 婷婷色系婷色| 玖玖热视频| 婷婷色色丁香| 天天草天天日| 婷婷综合网站| 99视频在线播放大全| 天天干天天叉| 欧洲色区| 在线不卡视频| 五月天天综合| 欧美日韩国产成人在线| 天天干天天日天天插| www久久99| 色吊丝永久访问网址| 激情丁香图片| 狠狠色色色| 五月丁香综合伦理片| 综合色播| 色婷婷欧美| 色五月色图| 久久大香免费| www.五月.com| 色吊丝99| 色综合久久久久久久久五月| 亚洲精品又粗又大又爽A片 | 97色五月婷婷在线| 亚洲第一色色色色| 网站免费一站二站| 91中文在线| 日日爽日日| 日韩成人中文字幕| 狠狠爱婷婷| 激情爱爱网站| 免费啪啪亚州视频| 丁香五月婷婷欧美激情-中文天堂最新版在线观看| 九色色| 97色碰碰公开视频| 99re最新地址| 无码人妻一区二区一牛影视| 伊人色综在线| 天堂二区| 婷婷五月天中文字幕| 3DAV亚洲香蕉久久 一区二区| 久久这里有精品视频| 久久婷婷五月综合网| 婷婷五月天综合色| 热久久999| 五月婷婷第四色| 97五月婷婷| 久激情网|