<kbd id="fugzo"></kbd>
<pre id="fugzo"></pre>
    1. <fieldset id="fugzo"><style id="fugzo"></style></fieldset>
      <center id="fugzo"></center>
    2. 哑剧盖章,电视剧折腰免费观看全集,亮剑3gp下载,秘密访客,泰剧为你着迷,古城童话,食物链无删减,大鱼海棠

      JAVA垃圾收集算法與內存泄露的解決方法

      時間:2024-10-16 09:46:10 SUN認證

      JAVA垃圾收集算法與內存泄露的解決方法

        對于垃圾收集算法與內存泄露的問題,下面為大家整理了關于JAVA垃圾收集算法與內存泄露解決方法,希望對你有所幫助。

      JAVA垃圾收集算法與內存泄露的解決方法

        1.垃圾收集算法的核心思想

        Java語言建立了垃圾收集機制,用以跟蹤正在使用的對象和發現并回收不再使用(引用)的對象。該機制可以有效防范動態內存分配中可能發生的兩個危險:因內存垃圾過多而引發的內存耗盡,以及不恰當的內存釋放所造成的內存非法引用。

        垃圾收集算法的核心思想是:對虛擬機可用內存空間,即堆空間中的對象進行識別,如果對象正在被引用,那么稱其為存活對象,反之,如果對象不再被引用,則為垃圾對象,可以回收其占據的空間,用于再分配。垃圾收集算法的選擇和垃圾收集系統參數的合理調節直接影響著系統性能,因此需要開發人員做比較深入的了解。

        2.觸發主GC(Garbage Collector)的條件

        JVM進行次GC的頻率很高,但因為這種GC占用時間極短,所以對系統產生的影響不大。更值得關注的是主GC的觸發條件,因為它對系統影響很明顯。總的來說,有兩個條件會觸發主GC:

        ①當應用程序空閑時,即沒有應用線程在運行時,GC會被調用。因為GC在優先級最低的線程中進行,所以當應用忙時,GC線程就不會被調用,但以下條件除外。

        ②Java堆內存不足時,GC會被調用。當應用線程在運行,并在運行過程中創建新對象,若這時內存空間不足,JVM就會強制地調用GC線程,以便回收內存用于新的分配。若GC一次之后仍不能滿足內存分配的要求,JVM會再進行兩次GC作進一步的嘗試,若仍無法滿足要求,則 JVM將報“out of memory”的錯誤,Java應用將停止。

        由于是否進行主GC由JVM根據系統環境決定,而系統環境在不斷的變化當中,所以主GC的運行具有不確定性,無法預計它何時必然出現,但可以確定的是對一個長期運行的應用來說,其主GC是反復進行的。

        3.減少GC開銷的措施

        根據上述GC的機制,程序的運行會直接影響系統環境的變化,從而影響GC的觸發。若不針對GC的特點進行設計和編碼,就會出現內存駐留等一系列負面影響。為了避免這些影響,基本的原則就是盡可能地減少垃圾和減少GC過程中的開銷。具體措施包括以下幾個方面:

        (1)不要顯式調用System.gc()

        此函數建議JVM進行主GC,雖然只是建議而非一定,但很多情況下它會觸發主GC,從而增加主GC的頻率,也即增加了間歇性停頓的次數。

        (2)盡量減少臨時對象的使用

        臨時對象在跳出函數調用后,會成為垃圾,少用臨時變量就相當于減少了垃圾的產生,從而延長了出現上述第二個觸發條件出現的時間,減少了主GC的機會。

        (3)對象不用時最好顯式置為Null

        一般而言,為Null的對象都會被作為垃圾處理,所以將不用的對象顯式地設為Null,有利于GC收集器判定垃圾,從而提高了GC的效率。

        (4)盡量使用StringBuffer,而不用String來累加字符串(詳見blog另一篇文章JAVA中String與StringBuffer)

        由于String是固定長的字符串對象,累加String對象時,并非在一個String對象中擴增,而是重新創建新的String對象,如Str5=Str1+Str2+Str3+Str4,這條語句執行過程中會產生多個垃圾對象,因為對次作“+”操作時都必須創建新的String對象,但這些過渡對象對系統來說是沒有實際意義的,只會增加更多的垃圾。避免這種情況可以改用StringBuffer來累加字符串,因StringBuffer是可變長的,它在原有基礎上進行擴增,不會產生中間對象。

        (5)能用基本類型如Int,Long,就不用Integer,Long對象

        基本類型變量占用的內存資源比相應對象占用的少得多,如果沒有必要,最好使用基本變量。

        (6)盡量少用靜態對象變量

        靜態變量屬于全局變量,不會被GC回收,它們會一直占用內存。

        (7)分散對象創建或刪除的時間

        集中在短時間內大量創建新對象,特別是大對象,會導致突然需要大量內存,JVM在面臨這種情況時,只能進行主GC,以回收內存或整合內存碎片,從而增加主GC的頻率。集中刪除對象,道理也是一樣的。它使得突然出現了大量的垃圾對象,空閑空間必然減少,從而大大增加了下一次創建新對象時強制主GC的機會。

        4.gc與finalize方法

        ⑴gc方法請求垃圾回收

        使用System.gc()可以不管JVM使用的是哪一種垃圾回收的算法,都可以請求Java的垃圾回收。需要注意的是,調用System.gc()也僅僅是一個請求。JVM接受這個消息后,并不是立即做垃圾回收,而只是對幾個垃圾回收算法做了加權,使垃圾回收操作容易發生,或提早發生,或回收較多而已。

        ⑵finalize方法透視垃圾收集器的運行

        在JVM垃圾收集器收集一個對象之前 ,一般要求程序調用適當的方法釋放資源,但在沒有明確釋放資源的情況下,Java提供了缺省機制來終止化該對象釋放資源,這個方法就是finalize()。它的原型為:

        protected void finalize() throws Throwable

        在finalize()方法返回之后,對象消失,垃圾收集開始執行。原型中的throws Throwable表示它可以拋出任何類型的異常。

        因此,當對象即將被銷毀時,有時需要做一些善后工作。可以把這些操作寫在finalize()方法里。

        java 代碼

        protected void finalize()

        {

        // finalization code here

        }

        ⑶代碼示例

        java 代碼

        class Garbage{

        int index;

        static int count;

        Garbage() {

        count++;

        System.out.println("object "+count+" construct");

        setID(count);

        }

        void setID(int id) {

        index=id;

        }

        protected void finalize() //重寫finalize方法

        {

        System.out.println("object "+index+" is reclaimed");

        }

        public static void main(String[] args)

        {

        new Garbage();

        new Garbage();

        new Garbage();

        new Garbage();

        System.gc(); //請求運行垃圾收集器

        }

        }

        5.Java 內存泄漏

        由于采用了垃圾回收機制,任何不可達對象(對象不再被引用)都可以由垃圾收集線程回收。因此通常說的Java 內存泄漏其實是指無意識的、非故意的對象引用,或者無意識的對象保持。無意識的對象引用是指代碼的開發人員本來已經對對象使用完畢,卻因為編碼的錯誤而意外地保存了對該對象的引用(這個引用的存在并不是編碼人員的主觀意愿),從而使得該對象一直無法被垃圾回收器回收掉,這種本來以為可以釋放掉的卻最終未能被釋放的空間可以認為是被“泄漏了”。

        考慮下面的程序,在ObjStack類中,使用push和pop方法來管理堆棧中的對象。兩個方法中的索引(index)用于指示堆棧中下一個可用位置。push方法存儲對新對象的引用并增加索引值,而pop方法減小索引值并返回堆棧最上面的元素。在main方法中,創建了容量為64的棧,并64次調用push方法向它添加對象,此時index的值為64,隨后又32次調用pop方法,則index的值變為32,出棧意味著在堆棧中的空間應該被收集。但事實上,pop方法只是減小了索引值,堆棧仍然保持著對那些對象的引用。故32個無用對象不會被GC回收,造成了內存滲漏。

        java 代碼

        public class ObjStack {

        private Object[] stack;

        private int index;

        ObjStack(int indexcount) {

        stack = new Object[indexcount];

        index = 0;

        }

        public void push(Object obj) {

        stack[index] = obj;

        index++;

        }

        public Object pop() {

        index--;

        return stack[index];

        }

        }

        public class Pushpop {

        public static void main(String[] args) {

        int i = 0;

        Object tempobj;

        //new一個ObjStack對象,并調用有參構造函數。分配stack Obj數組的空間大小為64,可以存64個對象,從0開始存儲

        ObjStack stack1 = new ObjStack(64);

        while (i < 64)

        {

        tempobj = new Object();//循環new Obj對象,把每次循環的對象一一存放在stack Obj數組中。

        stack1.push(tempobj);

        i++;

        System.out.println("第" + i + "次進棧" + " ");

        }

        while (i > 32)

        {

        tempobj = stack1.pop();//這里造成了空間的浪費。

        //正確的pop方法可改成如下所指示,當引用被返回后,堆棧刪除對他們的引用,因此垃圾收集器在以后可以回收他們。

        /*

        * public Object pop() {index - -;Object temp = stack [index];stack [index]=null;return temp;}

        */

        i--;

        System.out.println("第" + (64 - i) + "次出棧" + " ");

        }

        }

        }

        6.如何消除內存泄漏

        雖然Java虛擬機(JVM)及其垃圾收集器(garbage collector,GC)負責管理大多數的內存任務,Java軟件程序中還是有可能出現內存泄漏。實際上,這在大型項目中是一個常見的問題。避免內存泄漏的第一步是要弄清楚它是如何發生的。本文介紹了編寫Java代碼的一些常見的內存泄漏陷阱,以及編寫不泄漏代碼的一些最佳實踐。一旦發生了內存泄漏,要指出造成泄漏的代碼是非常困難的。因此本文還介紹了一種新工具,用來診斷泄漏并指出根本原因。該工具的開銷非常小,因此可以使用它來尋找處于生產中的系統的內存泄漏。

        垃圾收集器的作用

        雖然垃圾收集器處理了大多數內存管理問題,從而使編程人員的生活變得更輕松了,但是編程人員還是可能犯錯而導致出現內存問題。簡單地說,GC循環地跟蹤所有來自“根”對象(堆棧對象、靜態對象、JNI句柄指向的對象,諸如此類)的引用,并將所有它所能到達的對象標記為活動的。程序只可以操縱這些對象;其他的對象都被刪除了。因為GC使程序不可能到達已被刪除的對象,這么做就是安全的。

        雖然內存管理可以說是自動化的,但是這并不能使編程人員免受思考內存管理問題之苦。例如,分配(以及釋放)內存總會有開銷,雖然這種開銷對編程人員來說是不可見的。創建了太多對象的程序將會比完成同樣的功能而創建的對象卻比較少的程序更慢一些(在其他條件相同的情況下)。

        而且,與本文更為密切相關的是,如果忘記“釋放”先前分配的內存,就可能造成內存泄漏。如果程序保留對永遠不再使用的對象的引用,這些對象將會占用并耗盡內存,這是因為自動化的垃圾收集器無法證明這些對象將不再使用。正如我們先前所說的,如果存在一個對對象的引用,對象就被定義為活動的,因此不能刪除。為了確保能回收對象占用的內存,編程人員必須確保該對象不能到達。這通常是通過將對象字段設置為null或者從集合(collection)中移除對象而完成的。但是,注意,當局部變量不再使用時,沒有必要將其顯式地設置為null。對這些變量的引用將隨著方法的退出而自動清除。

        概括地說,這就是內存托管語言中的內存泄漏產生的主要原因:保留下來卻永遠不再使用的對象引用。

        典型泄漏

        既然我們知道了在Java中確實有可能發生內存泄漏,就讓我們來看一些典型的內存泄漏及其原因。

        全局集合

        在大的應用程序中有某種全局的數據儲存庫是很常見的,例如一個JNDI樹或一個會話表。在這些情況下,必須注意管理儲存庫的大小。必須有某種機制從儲存庫中移除不再需要的數據。

        這可能有多種方法,但是最常見的一種是周期性運行的某種清除任務。該任務將驗證儲存庫中的數據,并移除任何不再需要的數據。

        另一種管理儲存庫的方法是使用反向鏈接(referrer)計數。然后集合負責統計集合中每個入口的反向鏈接的數目。這要求反向鏈接告訴集合何時會退出入口。當反向鏈接數目為零時,該元素就可以從集合中移除了。

        緩存

        緩存是一種數據結構,用于快速查找已經執行的操作的結果。因此,如果一個操作執行起來很慢,對于常用的輸入數據,就可以將操作的結果緩存,并在下次調用該操作時使用緩存的數據。

        緩存通常都是以動態方式實現的,其中新的結果是在執行時添加到緩存中的。典型的算法是:

        檢查結果是否在緩存中,如果在,就返回結果。

        如果結果不在緩存中,就進行計算。

        將計算出來的結果添加到緩存中,以便以后對該操作的調用可以使用。

        該算法的問題(或者說是潛在的內存泄漏)出在最后一步。如果調用該操作時有相當多的不同輸入,就將有相當多的結果存儲在緩存中。很明顯這不是正確的方法。

        為了預防這種具有潛在破壞性的設計,程序必須確保對于緩存所使用的內存容量有一個上限。因此,更好的算法是:

        檢查結果是否在緩存中,如果在,就返回結果。

        如果結果不在緩存中,就進行計算。

        如果緩存所占的空間過大,就移除緩存最久的結果。

        將計算出來的結果添加到緩存中,以便以后對該操作的調用可以使用。

        通過始終移除緩存最久的結果,我們實際上進行了這樣的假設:在將來,比起緩存最久的數據,最近輸入的數據更有可能用到。這通常是一個不錯的假設。

        新算法將確保緩存的容量處于預定義的內存范圍之內。確切的范圍可能很難計算,因為緩存中的對象在不斷變化,而且它們的引用包羅萬象。為緩存設置正確的大小是一項非常復雜的任務,需要將所使用的內存容量與檢索數據的速度加以平衡。

        解決這個問題的另一種方法是使用java.lang.ref.SoftReference類跟蹤緩存中的對象。這種方法保證這些引用能夠被移除,如果虛擬機的內存用盡而需要更多堆的話。

        ClassLoader

        Java ClassLoader結構的使用為內存泄漏提供了許多可乘之機。正是該結構本身的復雜性使ClassLoader在內存泄漏方面存在如此多的問題。ClassLoader的特別之處在于它不僅涉及“常規”的對象引用,還涉及元對象引用,比如:字段、方法和類。這意味著只要有對字段、方法、類或ClassLoader的對象的引用,ClassLoader就會駐留在JVM中。因為ClassLoader本身可以關聯許多類及其靜態字段,所以就有許多內存被泄漏了。

        確定泄漏的位置

        通常發生內存泄漏的第一個跡象是:在應用程序中出現了OutOfMemoryError。這通常發生在您最不愿意它發生的生產環境中,此時幾乎不能進行調試。有可能是因為測試環境運行應用程序的方式與生產系統不完全相同,因而導致泄漏只出現在生產中。在這種情況下,需要使用一些開銷較低的工具來監控和查找內存泄漏。還需要能夠無需重啟系統或修改代碼就可以將這些工具連接到正在運行的系統上。可能最重要的是,當進行分析時,需要能夠斷開工具而保持系統不受干擾。

        雖然OutOfMemoryError通常都是內存泄漏的信號,但是也有可能應用程序確實正在使用這么多的內存;對于后者,或者必須增加JVM可用的堆的數量,或者對應用程序進行某種更改,使它使用較少的內存。但是,在許多情況下,OutOfMemoryError都是內存泄漏的信號。一種查明方法是不間斷地監控GC的活動,確定內存使用量是否隨著時間增加。如果確實如此,就可能發生了內存泄漏。

        拓展:

        java垃圾回收機制是怎樣的

        手動管理內存

        在介紹現代版的垃圾回收之前,我們先來簡單地回顧下需要手動地顯式分配及釋放內存的那些日子。如果你忘了去釋放內存,那么這塊內存就無法重用了。這塊內存被占有了卻沒被使用。這種場景被稱之為內存泄露。

        下面是用C寫的一個手動管理內存的簡單例子:

        int send_request()

        {

        size_t n = read_size();

        int *elements = malloc(n * sizeof(int));

        if(read_elements(n, elements) < n)

        { // elements not freed! return -1; } // … free(elements)

        return 0;}

        可以看到,你很容易就會忘了釋放內存。內存泄露曾經是個非常普遍的問題。你只能通過不斷地修復自己的代碼來與它們進行抗爭。因此,需要有一種更優雅的方式來自動釋放無用內存,以便減少人為錯誤的可能性。這種自動化過程又被稱為垃圾回收(簡稱GC)。

        智能指針

        自動垃圾回收早期的一種實現便是引用計數。你知曉每一個對象被引用了幾次,當計數器歸0的時候,這個對象就可以被安全地回收掉了。C++的共享指針就是一個非常著名的例子:

        11int send_request() { size_t n = read_size(); stared_ptrelements = make_shared(); if(read_elements(n, elements) < n) { return -1; } return 0;}

        我們使用的sharedptr會記錄這個對象被引用的次數。如果你將它傳遞給別人則計數加一,當它離開了作用域后便會減一。一旦這個計數為0,sharedptr會自動地刪除底層對應的vector。當然這只是個示例,因為也有讀者指出來了,這個在現實中是不太可能出現的,但作為演示是足夠了。

        自動內存管理

        在上面的C++代碼中,我們還得顯式地聲明我們需要使用內存管理。那如果所有的對象都采用這個機制會怎樣呢?那簡直就太方便了,這樣開發人員便無需 考慮清理內存的事情了。運行時會自動知曉哪些內存不再使用了,然后釋放掉它。也就是說,它自動地回收了這些垃圾。第一代的垃圾回收器是1959年Lisp 引入的,這項技術迄今為止一直在不斷演進。

        引用計數

        剛才我們用C++的共享指針所演示的想法可以應用到所有的對象上來。許多語言比如說Perl, Python以及PHP,采用的都是這種方式。這個通過一張圖可以很容易說明:

        綠色的云代表的是程序中仍在使用的對象。從技術層面上來說,這有點像是正在執行的某個方法里面的局部變量,亦或是靜態變量之類的。不同編程語言的情況可能會不一樣,因此這并不是我們關注的重點。

        藍色的圓圈代表的是內存中的對象,可以看到有多少對象引用了它們。灰色圓圈的對象是已經沒有任何人引用的了。因此,它們屬于垃圾對象,可以被垃圾回收器清理掉。

        看起來還不錯對吧?沒錯,不過這里存在著一個重大的缺陷。很容易會出現一些孤立的環,它們中的對象都不在任何域內,但彼此卻互相引用導致引用數不為0。下面便是一個例子:

        看到了吧,紅色部分其實就是應用程序不再使用的垃圾對象。由于引用計數的缺陷,因此會存在內存泄露。

        有幾種方法可以解決這一問題,比如說使用特殊的“弱”引用,或者使用一個特殊的算法回收循環引用。之前提到的Perl,Python以及PHP等語言,都是使用類似的方法來回收循環引用的,不過這已經超出本文講述的范圍了。我們準備詳細介紹下JVM所采用的方法。

        標記刪除

        首先,JVM對于對象可達性的定義要明確一些。它可不像前面那樣用綠色的云便含煳了事的,而是有著非常明確及具體的垃圾回收根對象(Garbage Collection Roots)的定義:

        局部變量

        活動線程

        靜態字段

        JNI引用

        其它(后面將會討論到)

        JVM通過標記刪除的算法來記錄所有可達(存活)對象,同時確保不可達對象的那些內存能夠被重用。這包含兩個步驟:

        標記是指遍歷所有可達對象,然后在本地內存中記錄這些對象的信息

        刪除會確保不可達對象的內存地址可以在下一次內存分配中使用。

        JVM中的不同GC算法,比如說Parallel Scavenge,Parallel Mark+Copy, CMS都是這一算法的不同實現,只是各階段略有不同而已,從概念上來講仍然是對應著上面所說的那兩個步驟。

        這種實現最重要的就是不會再出現泄露的對象環了:

        缺點就是應用程序的線程需要被暫停才能完成回收,如果引用一直在變的話你是無法進行計數的。這個應用程序被暫停以便JVM可以收拾家務的情況又被稱為Stop The World pause(STW)。這種暫停被觸發的可能性有很多,不過垃圾回收應該是最常見的一種。

      【JAVA垃圾收集算法與內存泄露的解決方法】相關文章:

      Java內存溢出的類型10-03

      Java的內存劃分全解析12-17

      Javascript 閉包引起IE內存泄露分析07-05

      電腦內存常見故障及解決方法05-12

      手機內存卡故障及解決方法10-10

      Java認證輔導:Java實現二叉樹遍歷算法10-21

      電腦內存六大故障以及解決方法09-26

      JAVA認證基礎知識:近似算法(格雷厄姆算法)簡介10-29

      Intel傲騰內存是內存還是固態硬盤06-17

      主站蜘蛛池模板: 韩剧松药店的儿子们| 速度与激情9 高清在线播放 | 高清《恶魔人》动漫| 《特殊游泳女教练》免费观看下拉式| 虎鹤妖师录 电视剧免费观看| 太极2英雄崛起百度影音| 法国 女超人| 还珠格格新| 神医喜来乐2| 赤桥下的暖流完整版| 流星花园日版| 花子vs倔强驱魔师动漫在线观看全集 | 新白发魔女转| 迪迦奥特曼国语版全集高清| 郝板栗七部曲免费观看| 特邀送货员在线播放| 小欢喜电视剧完整版免费观看| 国风按摩院在线播放| 好想告诉你第一季在线观看| 扶摇电视剧| 大宅门全集完整版免费| 混血女精油按摩在线观看| 高清《误杀1》电影完整版带字幕| 向风而行电视剧免费观看高清全集 | 浪漫风暴| 麦乐迪超人在线观看| 奔跑吧兄弟 重庆| 《登山的目的2》中文| 私人女性监狱变态版在线观看| 《干柴烈火》| 女大学生家政保姆初体验| 蟒蛇电影国语| 少年班 电影| 特殊按摩急诊室| 奇袭电影| 法证先锋5粤语版免费观看| 新来的私人瑜伽教练| 《荒岛美人鱼》电影在线播放| 雯雅婷2| 战狼6欧美版免费观看完整版国语在 | 千里难寻 电视剧| 美景之屋2女老板娘的名字| 美容室的待遇5HD韩国| 《偿还》电影免费| 版坎贝奇《无憾》免费观看 | 姐姐真漂亮第3季全部免费| 电视剧樱桃| 假日游船1980法国经典| 《怪盗女谍》天海翼| 泰罗奥特曼国语版| 搭讪大师tv| 光溜溜的荒野求生| 非常勿扰| 《朋友夫妇:交换》3| 聚会的目的3高清完整版在线播放 向风而行电视剧免费播放观看 | 浪漫的办公室电影| 继拇安慰我HD中字| 直播:陕西卫视春晚| 赤警威龙国语| 牙医赤子板栗免费| 花样姐姐第一季免费完整版在线观看| 盛夏爱情故事短剧免费观看全集| 雪狼谷百度影音| 《藏在婚纱里的秘密》| 明星换脸免费观看方法 | 斗罗大陆免费全集| 《农场保卫战》满天星法国| 越剧电影五女拜寿| 猿人星球纪录片| 需要爸爸播种籽2演员名字| 直捣黄龙| 决战江南全集| 电影《女儿闺蜜》完整版| 美国1985小辣椒| 出轨的女人电影| 泰国电视剧千方百计爱上你| 夜半梳头中的黄段开头| 《黑白禁区》电视剧全集| 红石坊 电视剧| 语义错误无删减全集在线观看| 美国队长3迅雷| 太极拳八段锦教学视频| 娘家的故事| 《她跟谁都可以爱》第一集| 不能久坐是多长时间| 监禁时间电影| 无敌县令全集| 十大奇冤粤语| 斗破苍穹第175集免费播放| 红罂粟第三部| 亲吻姐姐第二季| 《不正经的魔术讲师与禁忌教典》| 武庚纪在线观看| 红杏出墙记免费看| 韩剧《鬼宫》全集免费| 高清《神奇女侠》免费观看| 一路向西全集观看| 漂亮妈妈7巴字开头中字| 叛我更幸福免费观看完整版全集 | 海天盛筵 孙静雅| 年辖:市辖区| 公主日记在线观看| 波士顿法律第三季| 九江县| 浮生若梦电影| 他是谁电影免费观看完整版高清| 婷妹要努力| 隐之王全集| 地爆天星电影无删减版在线观看| 百味人生| 日本混血大学生精油按摩免费看| 爱情盛宴| 53酒店1-60集| 电视剧渡江侦察记| 插曲30集全集免费播放| 看了又看第三部| 需要爸爸播种子电影免费播放英文| 爱 死亡和机器人| 和前任出差| 火影忍者最新op| 坎贝奇《无憾》播放| 驾驶员找工作| 麦乐迪女超人HD版在线观看 | 如懿传高清| 插曲的痛30集全集免费观看第12集| 未来罪行| 女超人麦乐迪在线完整版免费观看视频| 妹妹皇后| 乌克兰国土面积与人口| 侄女的开发日记| 高清《先哄后爱》电视剧| 白峰国语版在线观看全集| 何以笙箫默在线看免费西瓜视频 | 哦吼小闪电的真名叫什么| 孩子们电影| 高压监狱2无删减1080P| 来了在线观看| 《银鞋》荷兰/2015| 平凡的世界免费电视剧| 八戒八戒在线观看免费高清4| 春暖 迅雷| 24世纪性格爱情| 一仆二主电视剧 39| 爱情而已电视剧免费观看完整版高清| 联合早报电影高清完整版需要爸爸播种子 | 《魔都精兵的奴隶 第二季》| 遇见璀璨的你免费观看| 韩国 售楼小姐的秘密 在线 | 菲律宾电影修理工的艳遇| 村干部忘记关摄像头| 法国空姐3免费高清原声满天星美版百度 | 凌云志志(法国)满天星在线| 春节起源于哪个朝代| 金玉满堂电视剧| 部长出差的日子在线播放| 阴斗9.1免费版西瓜| 牌坊下的女人插曲| 咒术回战电影| 刘玉玲电影《满天星》| 共同警备区剧情详解| 伴侣交换| 磴口县| 谢孟伟《无主之城》在线观看 | 21世纪,爱惜指南| 两世欢电视剧| 《玉女心经3之阴阳和合》免费舒淇| 苹果在线观看| 胜女的代价3| 战狼4欧美版免费观看完整版| 小宁电影网| 功夫熊猫命运之爪| 琼瑶回应于正道歉| 全开女孩| 莲花争霸优酷| 《爱我几何》完整版在线观看| 《幸福花园》| 破产姐妹 第三季| 板桥市| 斗罗大陆第196集免费观看| 朋友的妈妈在线免费| 湔雪的魔女| 恢复上诉连干七天日本电影| 天美星空mv| 3j电视剧全部免费观看完整版 | 美国式家庭3妮娜| 圆桌骑士rom| 禁忌4年转一代| 夺命高楼| 以家人之名电视剧免费观看 | 聊斋志异电影香港高清版| 明朗少女成功记| 《花儿与少年》被曝重启| 替夫还债3在线观看完整版中文电影| 吴健版农民伯伯2免费观看在哪里好看| 电影《异常》完整版观看免费| 需要爸爸播种籽2演员名字全集 | 老妈和我一起嫁| 耶伦抵京 中美双方握手近20秒 | 惊变电影国语版在线观看 | 大宋探案局| 圣特罗佩斯的姑娘们1982 满天星 金瓶梅电视剧全集电视剧在线看免费观看 | 奥美迦奥特曼中文版| 交换的一天2韩国中汉字普通话| 快17电影网| 美容院的待遇服务免费| 她很漂亮韩国版| 年的继拇4| 乔家大院电视剧全集免费观看| 周生如故电视剧| 伦韩国理论片在线观看| 陷阱2015| 激战厨房1-5集全部免费观看| 新兵正传2| 用身体换猪肉吃的农村题材电影| 九九九影视电影高清全集观看| 欧式少女第16集全集高清版观看视频 | 《有翡》电视剧| 施瓦辛格最新电影| flypaper百度影音| 换拌5| 双人浴缸| 情不自禁高清无删减在线观看| 冷山在线观看| 掩不住的阳光| 《朋友夫妇:交换》3| 桃恋者未删减| 韩国电影理发店的特殊待遇| 一一影视| 纸钞屋在线观看免费观看完整版| 电视剧大码头| 苦恼人的笑电影完整版| 反情色 电影| 活人配阴婚的后果| 五月天激情小说网| 红色假期黑色婚礼| 滨田のり子| 法国电影《卖百科全书》多长| 爱情公寓43| 地藏经唱诵| 电视剧潜龙行动| 欧美电影售楼女王在线观看| 不屈的儿媳国语版全集| 夜游生活| 儿媳妇的滋味| 逆天修仙飒爆:废柴嫡女全集免费| 善良的嫂子3在钱电影| 乌兰察布市| 铿锵锵锵锵在线观看完整版| 奈何boss要娶我2| 蜜桃成熟期| 《需要爸爸播种子》HD免费在线播放 - 全集电影 - 金鸿影视 | 《卖房子的女销售| 初见乍惊欢| 葫芦娃在线观看| 漂亮的的瘦子4| 父亲我要你的种子电影免费观看| 幻影丹尼| 坎贝奇无憾140分免费看| 刀剑神域国语版全集| 十大rko| 《爱我几何》莫妮卡原版免费观| 女朋友的妈妈费观看| 计春华简介| 《大胸女友》免费观看| 日本jIzz| 爱我多深在线| 法航空姐11电影| 一夜锁情总裁大人请温柔电视剧| 美国女版《壮志凌云》剧情| 火柴女孩| 《这就是我》| 全世界等你们分手电视剧免费观看| 《梦幻军事地区》| 野蛮人科南| 清镇市| 原振侠与卫斯理| 干物女小埋| 云南虫谷电影| 3对1在线观看中文字幕| 精装追女仔2004国语| 乘风破浪的婚姻免费完整版短剧 | 电影贝拉1980在线观看| rosimm| 华晨宇打响内娱反黄牛第一枪| 多田有花在线观看| 刑警12国语版免费观看| 老九门西瓜| 锡盟蒙中| 巴西按摩师无删减版在线观看百度云 | 罗克星克莱尔所有电影在线观看 | 私人航空电影在线观看完整版| 印度19名官员被热死| 凯登·克劳丝-Kayden壮志凌云| 沉默的谎言| 大槻响作品番号| 灵媒泰国恐怖片在线观看| 大梦归离在线观看全集免费播放| 爱你几何理论片| 鬼吹灯之牧野诡事第二季电视剧| 《开麦了吗?》| 人妻秘书替夫还债HD | 原野电影| 特殊的诊疗室6| 力量塔在线观看免费完整版高清| 《逃犯》高清完整版| 高清《女生宿舍2》| 《法国空姐8| 刘旭威演的电视剧| 《俄版女儿国》高清版| 《替夫还债》高清完整版| 女娲传说之灵珠| 兵临城下美版电影| 重庆到香港的高铁| 《花子vs驱魔师》第1集免费观看视频 | 扫黑风暴28集免费看| 出差期间被上司欺负叫什么电影部长| 真咲惠美| 尚格云顿电影大全| 玉骨遥电视剧40集全免费观看| 中字和丈夫的下属相处之道| 法国慢摇| 高清《失控第一季》| 斗牛 电影| 色魔工厂| 中共八大元老| 致命怪谈2电影完整版| 《女警坠落2》完整版| 我可能不会爱你微电影| 普门品全文念诵及回向全文| 韩国电影教室爱欲| 《混血的摇篮曲1973》| 在线天堂おなあちゃんなにか| 电影女儿国| 马克龙:选举结果如何都不辞职| 艳遇修理工在线播放| 古灵精怪东南亚4| 刘倩楠微博| 《法国空乘2018法版》| 美丽的保姆免费观看电视剧| 战火红颜40集免费观看全集高清 | 电视剧da师完整版免费播放| 泰国鬼片《黑煞女》在线观看免费| 桃花运电视剧全集观看| 石景山区| 动感之星精灵187完整版| 二战译制片| 九首歌下载| 360大佬爱上我第二季免费| 蜀山奇仙录动漫免费观看全集 | 韩国电影2018| 佳期如梦之海上繁花结局| 舒淇主演《玉女心》电影免费观看| 电影爱的色放| 卖百科全书的女人电影在线观看| 电影终极监狱在线观看| 下半场 微电影| 智酱是女生| 波多野结衣119分钟| 大侦探9免费观看| 酒巷深深| 春风燃情电视剧在线观看| 火红的日子| 家属1~6集全集免费| 春欲未删减版dvd| 月野りさ| 《维修工人的艳遇》中字 | 床3之他和她的关系| 巜人妻初次按摩2在线免费观看| 女友年轻的继牳2| 火影忍者在线观看免费全集| 女超人麦乐迪在线观看完整版| 禁止的爱善良的小姨在线播放免费 | 公浮之手中字5年纪大 | 仙武传在线免费观看| 丛林肉搏嘎嘣脆特效| 和部长出差的日子电影| 星际宝贝第一季国语免费观看| 迈克尔演唱会| 电影十二生肖在线观看| 美容店的待遇5HD电影| 银河奥特曼8| 满清十大刑酷之赤裸凌迟| 多哈十米台决赛| 电影《军事不当行为》| 哪咤之魔童闹海在线观看完整免费| 不扣纽扣的女孩| 春风燃情电视剧免费观看全集| 皇家奶娘碰碰| 陆小凤全集| 小麦进城百度影音| 索菲亚演唱会小便| 古墓丽影山寨版免费观看 | 阿娇张开双腿实干十三分钟| 战狼6免费高清版999加拿大版动漫 | HR版女版壮志凌云观看| 法版风流管家2008版| 藏海传电视剧高清在线观看| 香艳满屋| 6680新视觉免费新剧在线观看| 锦绣未央超长片花| 师傅日徒弟的场景| 十全电影在线观看免费| 女角斗士1满天星版在线观看| 人世间 纪录片| 中华大丈夫电视剧| 盛夏晚晴天 影音| 满天星电影在线观看全集免费播放| 凤凰传奇的全部歌曲| 七侠五义人间道在线观看| 城市猎人成龙国语| 电影《美味快递员2》在线观看完整版 | 荒野渔夫2v2| 笑林小子3| 《情趣用品调教》| 驻站在线电视剧免费完整观看| 北越暴行1-12集免费看| 高清《格林童话》免费观看| 新月格格电视剧全集播放免费观看| 陷入我们的热恋| 星克莱尔(啄木鸟)第一夫人 | 无懈可击之美女如云结局| 埃洛伊塞| 阿宾在线观看| 奇热剧集| k8s经典手机经典版免费观看| 陆贞传奇7| 龙咁威2之皇母娘娘呢| 重逢:丈夫的部下初恋未来遥香| 尸城在线| 黑白潜行| 黑帮少爷爱上我第八集| 周弘版《村枝》完整| 姐姐真漂亮第3季全部免费| 寒门赘婿全集免费| 《今天的她们》电视剧| 男女愁愁愁全集在哪看 | 电影天海翼匿名侦探免费观看| 社长与下属妻子韩国| 了不起的女孩电视剧免费观看西瓜| 悠悠球白水| 村上沙兽皇电影高清下载 | 迷人的岳母在线| 杨思敏版金梅瓶1一5集迅雷| 第二农场姑娘| 爱在春天电视剧免费观看| 搜索| 法国少女农埸电影在线观看| 国乒男团逆转韩国进决赛| 台湾当归| 真破血免费高清观看完整版| 时光正好电视剧免费观看全集高清| 人约离婚后国语高清| 青梅竹马是消防员无删1| 女超人麦乐迪满天星版英文名| 恋骑士ova| 陆贞传奇全集观看| 《爱我几何》在线播放| 韩剧《嫌疑人》在线观看| 女女电影免费观看完整版大结局 | 午夜十二点高清完整版免费观看| 渔夫荒野史记在线观看免费| 传闻中的陈芊芊电视剧在线观看| 赤板栗| 需要爸爸种子 - 在线追剧美国式禁忌| 向往的生活第一季全集| 电影叶问4| 强轩的电影作品大全| 入室强奸在线免费观看| 李宗瑞在线免费观看| 刘敏涛主演的黑蝴蝶在线播放 | 电视剧绝境铸剑| 藏精阁在线观看| 祖母和おばあちゃん的区别| 和部长出差被下药的电影在线看完整 | 丰镇市| 牛鞭插入女人身体| 你微信时很美电视剧免费观看| 高清《流动资产》电影| 好看的大陆电视剧| j情丛林| 免费热播甜宠短剧| 日本2和搜子同居的日子在线观看 青春环游记5季免费播放 | 《25岁的女高中生》| 凤凰网军事观察室| 霜花店 完整版优酷| 房东2| 奔跑吧3| 二人世界精彩片段| 车票 电影| V酒店在线观看| 女子护卫队满天星1973| 我爱妹妹网| 幸福触手可及百度百科| 翁虹任达华| 睫毛膏5美国1983中文 | 卷毛被表白| 红鲨突击电视剧全集免费观看| 韩国伦理部长来我家| 黑白禁区电视剧免费观看| 中国电影免费高清观看| 国家宝藏之觐天宝匣 电视剧| 香醇的绣感| 战狼6欧式少女所有视频 | 爱我多深原版不剪辑| 电影需要爸爸播种子屠夫电影网| 花千骨日剧第二部在线观看| 电视剧贤妻| 神话电视剧百度影音| 荷尔蒙6荷语中文版| 江河之上电视剧免费观看| 养父电视剧全集40| 《寒武纪》| 电视剧媳妇的眼泪| 安斋拉拉作品在线观看| 国号 百家讲坛| 大头儿子小头爸爸全集连续播放| 撕票风云在线观看 电影国语高清| 《修理工的艳遇》接丈夫电话还在做爱| 韩国我们结婚了| 《美容窒:特殊服务3》| 盟军敢死队4| 电视剧大宅门全集| 白峰电影在线观看| 吉祥三宝舞蹈| 晚娘下部| 邪恶力量第5季| 天若有情之烽火佳人| 宣判电视剧免费观看全集高清| 高压监狱2伦理HD| 古天乐穿越电视剧| 电影危机航线免费观看| 酒店1-90集高清免费观看| 小五当官电视剧全集在线观看| 弦子 沿海地带| 小仓尤子| 插曲的痛30集全集免费观看第二季| 雯迪vlog| 校墓处1| 《满天星父亲的秘书》全集| 强心脏100209| 新三狼之欢场屠夫| 四位少妇按摩| 我是幸运儿| 情系我心| 李恩美热水器维修工电影名字| 哪啊哪啊神去村| 玉米锦蛇有毒吗| 秦岭神树在线观看| 《医生特殊的治疗》5| 满清十二帝| 惊奇4潮男| 圣诞十二劫| 酒店1—80集免费50集剧情介绍| 性xX色3D动画xX无尽年轻| 召唤恶魔阿萨谢尔| 高清《沈家嫡女》短剧全集| 高清花便当| 除却巫山海外版无删减| 需要爸爸播种在线看| 沈阳现万米丁达尔效应| 我是mt第三季| 非常人贩2在线观看| 综合笔记视频图片《韩剧办公室蓝色隐身帽子》 - 全集免费观看 - 永时影院印度 | 郝板栗《千金小姐》免费完整版| 记忆裂痕高清| 龙里县| 冰冷热带鱼电影日本版| 赖猫的狮子倒影大结局| 不可撤销| 《激战丛林》-罗莎·卡拉乔洛免费观 | 97电视剧在线播放免费观看| 环珠格格| 美丽高解像粤语全集| 斗罗大陆第150集| 需要爸爸播种在线免费观看| 强女の上司侵犯在线观看| 勇敢的心迅雷下载| 樱花动漫免费看妖神记第五季| 魔道祖师动漫全集免费| 伦理《法国护士长》2006在线| 魔女的考验日语| 《漂白》电视剧在线播放| 延禧攻略70集免费播放| 放羊的星星全集优酷| 成熟妇人的下午茶电影| 相忘谁先忘| 下一站婚姻 电视剧| 黄金渔场130605| 我爱hk开心万岁粤语高清| 美式保罗2经典版在线观看| 广西综艺频道| 一起来看流星雨18| 天生爱情狂国语| 《需要爸爸播种美国》演员全名| 电影《金悔瓶》徐少强雁夫人是谁演| 前复权后复权| 你并不懂我歌词| 熏肉怎么吃| 金银瓶1-5hd普通话水蜜桃2 布隆迪| 战狼6免费完整在线观看| 九条的大罪全集观看| 刘大明白改命师全集| 赘婿29| 暗黑森林满天星版美国| 大宾的寝室免费在线观看 | 几个少妇去按摩电影| 三妹免费| 禁室培欲电影| 魔法保姆| 县委大院电视剧全集免费观看| 哇嘎嘎电影高清完整视频在线观看| 三国塔防 魏传| 寡妇女人免费观看全集高清电视剧| 女人的抗战 电视剧| 名侦探柯南普通话版全集| 美丽小蜜桃美国| 小男人和大女人做爰| 齐天大圣2022电影在线观看| 战狼6免费观看在线播放完整版| 天海翼短发女教师 | 庄智渊获得亚洲杯男单季军| 泰剧4分钟在线观看| 花与蛇1全集百度影音| 特殊房产销售2| 巨大粗壮两个JJH| 粉碎机未删减| 苍空电影完整版在线观看| 电影《官人我要》免费观看| 按摩店的特殊待遇电影| 咱俩结婚吧电视剧| 说出你的故事欧弟| 梦回鹿鼎记什么时候上映| 弹起我心爱的土琵琶简谱| 八戒八戒网剧8在线观看| 银瓶梅电视剧第5集电视剧在线观看泰国版 | 电影洛丽塔| 空巷子电视剧全集免费观看| 魔力看在姨母家的客厅| 女超人 满天星版麦乐迪马克斯在线观看| 宝贝把它掏出来憋不住了| 奇门遁甲国语版| 恶魔奶爸2季| 嘉义县| 涩涩屋在线观看免费| 我的山与海| 电影太极2英雄崛起| 魂断秦淮| 漂亮的保姆3韩国电影| 禁忌5在线观看电视剧完整版免费 壮志凌云女版满天星法版免费2011美国 | 扒灰漂亮儿媳妇| 老酒馆电视剧在线观看免费全集| 迈克尔 道格拉斯| 与部长出差的日子在线观看| 郭德纲新济公传| 追爱家族| 野兽刑警| 联合国称缅北数百人越境逃入中国| 哇嘎国语电影在线观看| 性解密日美| 电视剧璀璨人生全集| 成均馆绯闻10| 天网追踪电视剧免费观看| 陈宝莲电影| 法国空姐2008满天星法版:星辉照耀下| 午夜凶铃3d| 好先生 电视剧| 周迅画皮1电影免费高清在线观看| 《混血儿摇篮曲》在线 | 《李宗瑞1—32全集》电影| 幸福有配方电视剧全集| 罗丽星克莱尔经典全集| 你微笑时很美在线| 徐若瑄魔鬼天使电影免费观看 | 东乌珠穆沁旗| 法国电影《空乘5》在线观看| 若是如此在线全集免费观看| 三生三世枕上 书| 山菊花在线观看| 《啄木鸟:爱神靓装》演员表| 哆啦a梦电影大全免费中文版| 罗马欲乐园| 美味快递| 麦乐蒂在线观看| 泰版流星花园在线观看| 婚前试爱国语版| 同志帅哥| 爱我几何免费观看| 按摩店的待遇1电影在线观看| 我爱下电影论坛| 台剧《过界爱》在线观看全集| 朝鲜驱魔师在线观看| 寻梦环游记中文版| 蜜桃成语1997| 灿烂遗产| 亚马逊的眼泪1| 《极限审判》| 河北梆子辕门斩子全集| 朴亚珍| 法国版《女超人:麦乐迪》在线看| 秘密花园第三集| 无颜之月1~5集无删减观看策驰| 《斗罗大陆》.免费观看| 冰河剧场亲爱的老师| 台湾版黛比浪漫家教电影| 捷克满天星A片在线观看| 逃英乱港分子染上奥密克戎| 聊斋艳谭之孽欲孤鬼| 在厨房被夫上司强迫BD| 平舆县| 妈妈职业5| 高清恋爱恐惧症未删减| 春色寄情人电视剧全部免费版| 女皇之刃| 放荡的女教师3在线观看| 酒店1-90集连续剧| 妈妈的好朋友iD| 胭脂雪大结局| 暗宅之迷| 金三角电影《女毒枭》| 王菊回应观众质疑感情戏尺度大| 战狼6免费观看播放下载| 台剧浪漫女家教免费观看第14集| 艳访吸血鬼| 晚娘百度影音完整版| 咱们结婚吧多少集| 轻年电视剧| 美国式禁忌睫毛膏4完整版免费观看| 小丑1电影| 原来你也喜欢我短剧免费观看全集| 海绵宝宝双人闯关| 《我老公的朋友2》| 台版1987渔夫荒野史记在线观看| 兄妹开荒| 邓丽君歌曲演唱会| 王楚钦回应怒怼粉丝事件| 游戏大作战泰剧在线观看免费| 夫妻成长日记在线| 满天星电影在线观看完整免费高清 | 年轻的家长3| 辽宁卫视手机在线直播高清版| 夫妻换房在线观看| 白日美人无删减完整视频| 瑜伽学院 电影| 好姑娘3中文在线观看| 神木丽急诊待遇2| 仙逆动漫76集| 法国空乘4完整| 暹罗之恋完整版| 《掌中之物》西班牙| 二十一世纪爱情指南欧美| 猩疯血雨未删减| 不要 在这里 回家 弄| 被闺蜜捆绑震蛋折磨调教 | 切尔诺贝利日记qvod| 妖刀记第二部| 电视剧狂飙全集在线观看 | 新金瓶梅 下载| 银翼杀手2049 电影| 最近我的妹妹有点怪电影| 电视剧战神| 电影《爱我几何》高清在线看| SSSxxxx美国666| 格雷的五十度灰 电影| 百花缭乱 无修| 电影《捍战2》| 血战台儿庄高清| 永泰县| 沙漠公主满天星| 东方之珠国语| 超级附魔| 怪奇笔记电视剧免费观看| 《现在的是哪一个多闻! ?》| 法国《口咬》电影完整版剧情介绍| 锕锵锵锵铜铜铜铜免费 | 一边亲\边下奶免费视频| 地龙宝宝| 星游记动画片全集| 《新手律师》啄木鸟叫什么 | 林风短剧免费全集播放| 浪漫人生| 塔日酒店免费完整版| 欧式少女18集视频大全 | 老公从外地回来一晚上不让我睡觉| 远离天堂| 千金奴隶| 欧美成人版电影荣誉守则免费在线观看| 男人和女人一起相愁愁愁电视剧在线 | 凶灵假期| 洛丽塔在线观看高清免费| 美容院:待遇服务,3| 锵锵锵完整版在线观看高清完整版| 半夏电视剧免费观看完整版高清 | 天堂计划| 插曲的痛30集| 联手复仇虐渣:双胞胎姐妹全集免费| 小时代在线观看| 世界上什么人一下子变老| 女超人麦乐迪2013完整版| 强制诱惑| 苹果电影完整版在线观看免费版| 两个世界高清完整版免费观看| 我要爸爸的种子| 法国空姐4艺术片| 喜盈门电影| 一主二仆电视剧| 邻居也疯狂电视剧| 开局一座山| 易门县| 《交换别人的麦子3》的剧情简介是什| 大男孩电影| 倚天屠龙记电视剧免费观看完整版 | 动感之星小玲108集全集免费| 奇迹笨小孩将在网飞播出| 冷风暴剧情| 两个人的视频在线观看| 梅开二度| 西游记 续集电视剧| 女兵酷刑性暴行电影| 特殊的发型屋3完整版| 强奷皇后娇呻浪吟前后夹击| 摸心第六感| 苍井空的影片| 《隔壁女邻居3》中文| 恶行之外电影| 部长来做客| 戍天伏魔录| 新王保长| 侠探杰克2迅雷下载| 丈夫的上司| 四位少妇按摩记在线观看| 机甲女神| 动漫在线观看免费全集| 封神降魔2桃山气海| 辩护人 韩国电影| 哇嘎免费观看完整版高清在线观看| 高压监狱电影在线观看完整免费高清原声满天星悬疑 | 李娜歌曲大全| 1—45集电视剧免费播放| 爸爸种的种子第二集| 人猿泰山1995版全集| 我是静宝呀vlog| 国际足球大联盟| 禁忌II| 印度人看中国高铁| 恋恋小酒窝电视剧免费观看| 锵锵锵锵锵锵锵锵电视剧在线观看| 公之浮之中字10的更新时间| 瓦尼塔斯的笔记动漫在线观看樱花| 娇娇王妃水洛蓝电视剧免费观看 | 修罗武神第二季免费观看全集| 韩剧霸总爱上单亲妈妈|