<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

      主站蜘蛛池模板: 小女花不弃电视剧免费播放| 高清家用摄像头| 美国忌讳1~7| 水平线上的阴谋国语| 《我们的爱》泰剧免费播放全集| 鸟居美雪| 斗罗大陆66集| 非人哉のエロ动漫| 高清直到黎明未删减| 先结婚后恋爱全集| 毒液:致命守护者免费完整版高清 《主妇与装修工》大结局一木百子 | 苏明明电影《暗夜》| 《肥妻重生 摄政王追妻路》| 美国禁忌电影免费观看满天星| 古船女人和网| 东北人猫冬是什么意思| 阿姨大小姐| 案发现场第二部全集| 《裙子下有野兽》| 蜡笔小新国语全集高清| 佐佐木麻衣| 黑白配HD1080电影在线观看 | 轩辕剑之天之痕电视剧免费观看| 黑白配在线观看免费版全集| 大侦探霍桑免费观看| 法国空姐满天星法版第一季在线播放 | 金玉满堂| 《孽欲狐仙》在线观看| 郝板栗免费观看| 爱无悔之百万新娘| 巨星在韩国| 流金岁月在线观看| 庆余年二在线观看| 小蜜桃5| 冲上云霄2在线观看| 台湾甘露粉红色的梦| 元彬主演的电影| 爱恋2015讲的是什么故事| 360大佬爱上我第四季观看| 唐朝诡事录免费观看电视剧剧情| 圣堂风云剧情| 国庆60周年阅兵式| 妈妈的职业5观看全集免费| 大叔我爱你电影| 飞机上的性K8服务| 美版咒怨1| 危险关系2012| 修罗武神更新至54集| 猎罪图鉴免费观看完整版高清| 我的女友妈妈韩字的id| 爱在初春惊变时| 捡到千亿总裁短剧免费观看| 凯登克罗斯的电影免费观看| 天龙八部免费观看在线完整版| 政和县| 纵有疾风起在线播放| 徐小凤经典歌曲| 三年电影在线观看免费网| 庙街豪情| 嫂子嫂子| 美丽的侯莎1980意大利语| 一定要抓住韩剧完整版| 樱桃电视剧全集| 我们是坏孩子| 美国版《健美》| 美丽高解像粤语全集| 初体验5完整版| 乡村爱情9下部下载| 在线观看卖房子的女销售| 复仇者联盟字幕| 美味快递员特殊待遇2在线观看免费高清 | 法国空乘2完整版在线看 | 公的浮之手在线观看| 琉璃电视剧全集在线观看正版 | 海边的异邦人 电影| 《落魄贵族琉璃川》免费观看全集动漫| 《法国女仆》安娜的扮演者 | 初恋时间1-6| 大香交伊人| 韩国黄色三级片村故| 新水浒传28| 赤板丽主演的《千金小姐》在线观看 | 余温陷阱短剧免费观看| 阿拉伯电影绝色在线观看免费 | 激情从林| 城管拆军区| 祥娃娃一家子| 插曲的痛在线观看免费播放电影| 学院救援团| 我的世界电影在线观看免费| 凌云志(法国)满天星| 小背篓伴奏| 电影《陌生人》| 站着再来一次第30集精彩片段回顾| 仁心解码| 33d蜜桃成熟时| 《overflower》第一季无马赛免费观看直| 守护解放西纪录片| 新四大名捕电视剧| 小辣椒3美国伦理-MKV高清视频全集-FD202AV | 女子消防队满天星在线观看视频| 杀破狼贪狼免费观看| 有只僵尸暗恋你下载| 杰西·简啄木鸟| 浪漫的办公室电影| 欢乐颂第四部50集在线观看免费| 美丽又紧致凯帕克电影在线| 棋士电视剧免费观看| 劳荣枝庭审直播| 嫂子的职业中字| 大唐好男人电视剧| 仙武帝尊动漫免费观看全集完整版| 思春期诱惑下载| 国语韩剧爱的呼唤| 天地人间| 哇嘎全集免费播放在线观看| 熊出没之环球大冒险1| 宋慈韶华录电视剧免费观看| 水灵的继拇BD中字| 我最好朋友的女朋友| 钟丽缇晚娘完整版| 俘虏之锁1-2集在线观看| 《要听爸爸的话》第4集| 油饼的热量| 女子修道院2满天星版| 我的后半生免费观看全集| 高清《通往你的地图》电影| 《老舅》电视剧免费观看| 寒武纪免费观看在线观看完整版| 迁安市| 功夫小龙| 樱花树下电影完整版免费| 农场保卫战满天星免费观看| 杀戮天使第二季| 工作女郎在线免费观看| 三年大片全免费国语版观看| 哪吒2在线观看免费版高清| 狂飙在线观看免费全集高清| 女子护卫队满天星版在线播放| 迷你世界传送门有几种| 《年轻的女仆》韩国电影在线观看| 特殊游泳教练免费| 魔法坏女巫2未删减| 我们都要好好的全集免费完整版| 高压监狱2在线高清完整版免费| 地久天长豆瓣| 冯巩相声全集高清| \私人女人监狱免费看| 超级女保镖免费观看全集高清| 魔物娘医生| 凱登克罗斯合集满| 披荆斩棘第4季在线观看| 无人区在线观看免费| 美容院特别待遇| 因为爱情有幸福之一电视剧| 洪七公被谁杀的| 花间姑娘韩国三级片| 3D肉蒲团在线看电视| 电影 锦衣卫| 高清趣塔德庄园未删减| 日剧《穿睡衣下楼取快递》| 朋友的妈妈1| 女老师的诱惑在线免费观看| 华丽的外出电视剧全集免费观看| 雪中悍刀行40集免费观看| 哈利波特1—8部免费观看| 马向阳下乡全集| 弃女重生:邪王追妻全集免费| 似锦电视剧在线观看免费| 哀情口令 电影| 监狱不设防快播| 武逆5200| 韩版同学的妈妈| 子夜电视剧| 逃跑的女孩完整版| 青梅竹马是消防员第二季动漫剧情解析 | 強暴處女1-12系列| 麦迪逊河谷 第一季全集观看| 祝福祖国歌谱| 你比星光更美丽免费观看全集 | 侦探成旭第一部| 禁欲韩国| 李茂换太子电影在线观看| 和讨厌的部长一起出差旅游电影| 大象的眼泪 电影| 鬼灭之刃九柱训练篇免费观看| 月上重火免费观看全集完整版高清| 小猪佩奇全套| 少年包青天在线观看| 《被下药强辱的妻子》免费看| 火口的两个人去模糊板完整免费观看| 广州民宅突发火灾| 桑德拉《满天星》| 金牌保镖| 女超人麦乐迪2013完整版| 猎毒者电影| 万万没想到短剧全集| 台湾版棘手狂情| 蓝色隐形帽子电影免费| 李安 逝去的爱| 哇嘎全集免费看| 烧饼皇后演员表| over flower无码| 李阳疯狂英语全集| 凯帕克主演的电影在线观看| 朝9晚5| 大决战剧情分集介绍| 美乃雀电影在线| 电影不忠诱罪完整版| 沙漠神枪| :《Le Trou》(2019)| 唐朝诡事录第三季| 人民万岁电影| 凯登克罗斯主演作品在线播放| 战神阿修罗| 台湾水电工完整版| 蜜糖在线观看| 坎贝奇《品味人生》第二部 | 米奇沃克斯| 欢场电影高清在线观看| 草蜢演唱会| 日本东京混血大学生精油按摩-2019 - HD国语日韩电影在线-B042AV 韩国电影飘亮女友的妈妈 | 麻花传奇天美mv免费观看电视剧大全 | 电影北京遇上西雅图在线观看| 大道朝天国漫免费观看| 幽游白书在线玩| 除却巫山电影无删减版| 哈尔滨花式宠爱南方小土豆| 2024追风者电视剧免费观看| 19岁在线高清观看免费播放电视剧 | 《女海盗1》免费观看| 电影绝命速递| 甜美日系风| 爱我几何在线播放完整版| 乌贼娘第一季| 请回答1988第10集| 缉魂电影无删减完整版| 俄罗斯版女儿国2哪里能看| 苍井空电影网| 艾琳电影| 铠甲勇士刑天后传全集播放| 免费完整版| 特殊交易在线观看| 爸爸接种2| 漫画故事韩剧李采潭免费观看| 掌心电视剧免费观看完整版| 丈夫的上司来家拜访在线观看| 泰剧乱点鸳鸯谱| 浙江西游记| 莉亚戈蒂满天星免费观看全部剧情 | 舞台2023在哪个平台播出| 李晨电视剧| 泰剧是你| 优秀女巫贾斗心| 安吉拉怀特透视电影免费观看2023年上| 爱恋3d迅雷下载| 黑白配高清国语全集在线看| 小女ラムネ在线观看第一季| 日剧《太想被你爱了》百度云| 致命诱惑电影| 虐恋情深全集免费| 电影原始武器| 天使爱美丽| 法国满天星古墓丽影全集| 可不可以挽留| 人间中毒简介| 战狼6欧洲少女完整版| 宝贝别忍着喷出来| 野花影视在线观看免费高清完整版| 新金银悔5一10普通话| 金瓶梅电视剧第5集电视剧| 开心家族下载| 奋斗吧 少年在线观看免费完整版| 酒店1至50集免费观看| 聚会的目的完整| 不说谎恋人免费观看全集| 白峰美羽 在线| 宝儿演唱会| 铁拳怒潮电影免费观看| 楚剧大全| 暴躁46集全全免费播放| 电影关云长| 年轻的小姨子在线免费观看| 男生和女生在一起愁愁愁在线观看 | 人体蜈蚣3 电影| 杨思敏《杨贵妃秘史》| 私人航空2完整版在线| 小猪佩奇全集免费版| 少女免费观看高清电影韩剧大全| 颤抖吧阿部一季电视剧免费观看| 保姆用废弃尿垫给老人擦嘴被判刑| 火影最新op| 毒舌律师 电影| 三年大全国语版免费观看| 痴人之爱电影在线观看| 莱拉满天星三部曲免费观看| 电影财神客栈| JUL-945丈夫不在的三天| 金银悔5一1手机版最新版本更新内容 | 没有秘密的你在线观看免费完整版| 《温度爱情》免费资源下载| 无声蛙鸣免费观看全集| 电视剧红颜的岁月| 女房东的滋味3| 乾少归来短剧免费观看| 夺命佳人在线完整版| 反打镜头| yeyllow视频免费| 人工少女2操作| 没有罩子的瑜伽老师| 杨敏思1-5集免费观看电视连续剧| 似锦电视剧在线观看免费| 苹果 范冰冰电影| 石城县| 【中文字幕】IPX668新任女教师中出笼城轮姦 白峰美羽 - 色网 | 坠落的女律师| 女仆小姐的贪吃日常电视剧| 电影婚礼2008| 特战荣耀在哪个台播出| 啄木鸟《女拳击手2满天星版》 | 我的妻子韩剧| 电影《瓜达卢佩的玫瑰免费观看》| 电视剧我的团长我的团| 电影 泰迪熊| 长相思第一季多少集| 人猿泰山1994年版| 爱的妇产科电视剧全集| 新天师斗僵尸2| 警花交换做爱| 特殊的美容室| 妈妈的味道在线视频观看| 柒个我剧情介绍| 怪盗女谍天海翼在线观看| 四项公投是哪四项| 亡者之谜泰剧在线观看泰剧| 《卖房子的女销售》| 女儿国满天星版1988| 25岁女子高中生| 东北富婆25分钟对白| 美国家庭禁忌| 《借钱2》妈妈| 邻居也疯狂电视剧| 平邑县| 19岁在线观看免费播放高清电视剧| 天龙八部43| 七根心简免费观看全集在线播放| 新有菜电影免费观看在线| 四大名捕重出江湖| 游泳的秘密| 九宫奇局在线观看| 飞翔女孩满天星免费播放| 电击小子第3季| 娃娃脸 4| 三陪保姆电影| 《公的浮之手中字| 人体蜈蚣1电影| 第二陷阱| 篮球少年1| 《我最喜欢妈妈》动漫最新一集| 校园甜宠:校草独宠完整版观看| 电影《之后6》| 大地资源高清在线视频播放免费版 | xl司令动漫全集| 佳偶天成电视剧免费观看| 狙击手拉苏尔电影免费观看完整版 | 《九重紫》在线观看| Yellow视频在线播放| 《我们的秘密》电视剧| 鹿铃免费| 1985日本电影《黑色的眼泪》在哪里能 | 夺命手机| 《激战丛林》在线播放免费观看| 电影《断金》| 理发店里的特殊待遇4在线观看| 美国共和党领袖:已经炒了佩洛西| 战狼6免费下载| 幸福从天而降| 名侦探柯南第14个目标| 愁愁愁电视剧高清免费观看| 半身死灵2| 皇朝博美犬舍| 偷偷藏不住之许你| 台湾版黛比浪漫家教电影| 追凶者也在线观看免费完整版| 了凡四训电视剧完整版免费观看| 闯关东电视连续剧| 屋顶上的绿宝石| 修罗战神:谁敢动我家人全集免费| 不要再来伤害我dj| 雪中悍刀行电视剧免费观看36集| 高压监狱在线观看完整免费高清原声满天星2019法国 | 360大佬爱上我| 王岳伦陪王诗龄拍汉服写真| 灵域电视剧免费观看全集在线| 黄手帕国语版| 飞机上性服务2免费播放| 落叶归根| 曾志伟最新电影| 命中注定我爱你21| 最高の爱人诏三上松泽在线| 猎豹电影| 卸岭秘录电影在线观看| 肥乡县| 白峰美羽无码播放| 大梦归离免费看| 诗朗诵《永远的丰碑》| 泰坦尼克号A版啄木鸟| 需要爸爸播撒种子| 嫌疑人x的献身 日本| 战旗如画全集观看| 女律师的坠落完整板| 高清《胆小鬼》电视剧| 古战场传奇第一季完整版| 情迷夜中环| 电锯人樱花动漫| 《束缚游戏》全集| 时光沙漏在线观看免费完整版| 红玫瑰电视剧演员表| 中圆村妓三级片国语| 黄金渔场130619| 方世玉2| 东丽区| 台湾渔夫| 侦察英雄电视剧在线观看| 小猪佩奇mp3| 酒店1-75集免费观看全集| 棘手狂情电影完整版在线观看| 可疑的美容院电影| 麦乐迪女超人在线观看| 原始武器电影完整版观看国语 | 朋友的妈妈1| 森奈奈子| 弹丸论破13| 名侦探柯南16 第11个前锋| 《麦乐迪女超人》| 秦王李世民电视剧| 战狼6免费高清999加拿大版| 播放喜羊羊与灰太狼| angelababy最新电影 | 英国病人完整版在线观看视频| 欲百度影音| 法国航空空姐2016中文版视频 | 黑衣人全球追缉免费观看完整版| 爱情公寓五| 北越暴行3全集在线播放 | 恶灵骑士2| 新丰县| 金珠同学聚会| 《悬崖绝壁》| 星辰变第五季直通大结局| 马边| 羞辱上司无删减在线观看| 穿越火线下载 迅雷| 电影美乃雀主演的电影在线观看| 洗冤录第一部国语全集| 东京混血大学生精油按摩视频免费资| 乞丐大结局全集观看| 翡翠恋曲| 台湾《渔夫荒淫史》| 婚词离曲第四季全部16集| 棺姬嘉依卡| HD版泰山《激战丛林》完整版免费国语 | 卖房子女销售3| DTF圣路易日记电视剧| 1980法国空乘| 灭火宝贝法版免费法国满天星| 坠落女律师k82经典台词免费阅读| 四川版火| 金钱之味剧情| 襄汾县| 韩国维修工大尺度电影免费观看| 距元旦还有85天 | 《入室暴行》国语在线| 神秘的女仆满天星| 拜托了冰箱第一季| 五哈第二季| 牧神记第二季| 酒店1至50集免费观看| 唐宫美人天下全集| 保安疑因停车矛盾杀害两人| 巴林等四国元首将访华| 《女海盗1》美版免费观看| 李二不哈| 和你在一起乔任梁| 反抗之真心英雄剧情| XL司令第二季真人版在线观看| 身价过亿:打脸拜金女短剧全集| 八方传奇电视剧| 唯一的听众教学设计| 麦迪乐女超人在线播放视频 | 狐妖小红娘真人版电视剧免费观看| 爱唯侦察2025合集| 大清风云高清| 蜜桃成熟时2未删减版| 猎金游戏电影免费观看完整版| 棒棒tv| 抢奸电影| 名侦探柯南:通往天国的倒计时| 多波野结衣| 爱我几何在线播放完整版 | 夏家三千金全集第二部| 示范销售避孕套免费看| 全文一口气看完| 邱淑贞三圾片大全| 新金瓶梅2013什么时候上映| 3个女学生特殊按摩| 梦驼铃原唱| 电影《夺冠》| 祝福祖国歌谱| 21世纪指南完整版| 甄嬛传51集| 天外来客bt| 哇嘎嘎电影免费播放| 玄奘之路纪录片| 海之声免费观看完整| 电视剧富贵| 妙警贼探完整版免费观看| 战狼6欧美电影免费观看在线播放版 | 废子夺嫡之强龙归来短剧免费观看| 时光代理人第四集| 一年恋一天| 痴汉电车1| 宫锁心玉土豆网| 牌坊下的女人插曲| 女子自卫队满天星免费观看中文版| 关东棋王| 女海盗16高清免费观看| 保姆的特殊服务在线观看| 哪吒三免费观看完整版| 你的房子值多少斤西瓜?| 张学友电影全集粤语| 《美丽妻子替夫还债》有奈美剧吗 | 拯救大兵瑞恩在线观看| 周末同床完整版| 美国1985G点2| 我的波塞冬| 部长与秘书出差电影中文字幕| 彭丹徐锦江《孽缘》| 《女兵突击》满天星| 《大兵的寝室》电影完整版在线观看 | 演员梶田冬磨猝逝终年22岁| 丈夫上司部长与妻子相处秘诀| 电影三人一次性体检| 浮生如梦 一晌贪欢免费阅读| 巡回检察组在线观看全集| 《壮志凌云》凯登克罗斯版演员表| 斩神之凡尘神域| 亢奋第一季美剧| 绅士的品格在线观看免费完整版 | 姐妹4完整版在线观看| 杨鸣曾数次起诉离婚| 仓多真央JUY-970在线播放 | 罗江县| 乳女教师欲乱动漫无修版动画| 我的好兄弟8免费观看高清| 高压监狱2法国版下载| 海上钢琴师 斗琴| 同一屋檐下韩剧| 世界大力士争霸赛| 《满意度》在线| 越南电影《性的暴行完整版在线播放 | 无删减《苹果》| adn-018| 法国《爱上儿子》全集在线看| 夜班猎人在线| 狂飙38集| 儿媳妇的味道| 高清《瑜伽教练》无删减| 高清《女囚》电影| 偷窥无罪2诱人犯罪| 越南版《女兵俘虏营》电影免费观看| 樱桃小丸子| 少年派第二季电视剧免费观看全集| 三姐妹高清在线观看免费韩剧 | 特殊美容院2| 周深 卷珠帘| 京香监狱电影免费观看| 鬼神童子国语| 江湖情电影| 千金赤子板栗在线观看免费高清| 第三次初恋韩剧在线观看完整版| 急诊室的故事第一季| 韩剧童颜美女| 给父亲播种| 巨轮粤语28| 天天躁日日躁狠狠躁午夜剧场 | 本色电视剧免费版观看| 韩国女主叫梅川,丈夫叫小帅的电影| 最后的格格全集| 真假公主| 罗丽.星克莱尔《乡情》| 春雨电视剧高清在线播放视频| 初恋是CV大神电视剧| 意大利《激情丛林》| 超级教师第6集在线观看播放| 电视剧和平使命| 无憾电影坎贝奇全集免费观看中文 | 吾守尔大爷的冰| 我愿意在线观看免费完整版电影| 现在的是哪一个多闻! ? | 硬汉3在线观看| 江湖男装:女扮侠义短剧全集| 黑人大巨茎大战欧罗斯两白妞| 逆袭的第二名| 两公升的浮手中字| 火柴人战争遗产的故事| 星辰变在线观看全集免费播放| 高清《快车手》未删减版在线观看| 妻子8免费全集高清观| 人肉叉烧包1黄秋生| 联谊对象是RS系警官| 漂亮的母亲8中字开头6个字| 我们的队伍向太阳| 阿甘正传 电影| 小猪佩奇第9季中文版| 壮志凌云啄木鸟满天星| 我的团长我的团全集下载| 葡萄姐姐| 《家属动漫1~6全集》在线看| 壮硕军警猛男高H| 赤狐书生 电影| 金瓶双艳百度影音| wwwbbb565com| 纯真年代韩国| 《环太平洋2》完整版在线观看| 前郭尔| 17·3电影在线观看免费 | 《租借女友》第一季| 新警事电视剧| 《雪豹》免费观看| 开车看美女被开罚单?P的| 扫黑风暴在线观看免费| 播放_刚结婚陪部长出差的日子免费在线观看_看星星电影 | 小樱桃动画片| 花样男子大结局| 欢乐颂二| 《牙医郝坂丽1986版》西瓜视频| 东成西就2011百度影音| 宣判电视剧免费观看全集高清| 夫妻换房在线观看| 甄嬛传全集在线观看百度影音| 高清《求佛》po| 马永贞电视剧| 法国空姐2019满天星法版:星辉照耀版| 斗罗大陆免费高清在线观看| 十七大内容| 意大利《女子护卫队》| jul-150丈夫不在的五天| 演员李桓| 《功勋》电视剧全集| 麻花传剧夏晴子高清下载百度网盘 | 风与行电视剧免费| 黛比浪漫女家教国语版剧情解析| 天堂马帮 百度影音| 俄罗斯妈妈电影2024年上映吗| 阳信县| 全部视频排列表寂寞影院| 小麦进城电视剧全集百度影音| 猪哥亮与朱慧珍| 杰西简《荣誉守则》电影免费观看 | 售楼小姐| 奔跑吧共同富裕篇免费观看| 新藤惠美| 鹿鼎记周星驰国语在线观看| 禁忌-3结局| 古剑奇谭电视剧全集| 王保长歪传高清| 雅安市| 法国《空乘》2009| 蜜耻母在线观看| 琉璃电视剧免费观看完整版| 黑白配国语高清在线观看| 我可能不会爱你微电影| 监狱风云之少年犯| 高清《春日狂热》电视剧| 爱几何在线观看免费全集| 两个人日本高清| 加勒比女海盗HD 在线| 电视剧浮华背后| 法国空少电影| 死神264| 新警察故事2013| 一起吃拉面吧韩国电影完整版| 家属6| 开膛手杰克电影| 行尸走肉第三集| 王国第一季国语版免费观看| 《激战丛林》电影观看| 华丽的家族| 韩版花样男子国语版| 汤潮妈妈我想你| 战狼7欧式少女战狼12| 七大罪第一季| 男女做爰猛烈叫床高潮的书| 澡屋先生| 《沟壑难填》| 大汉历史| 少女爱上姐姐明亮的三颗星| 我的狐仙女友全集观看| xL司令第一季无马赛免费观看高清| 八仙全传之八仙过海全集| 何洁门照艳全集| 天涯女人心电视剧| 哇嘎电影在线观看入口| 唱歌的大姐姐第二季免费观看 | 乌台诗案的受害者| 支配的教坛第一季第五集在线观看| 调值公式法| 《斛珠夫人》全集免费| 蜜桃女孩成熟时| 女员工的付出中字特殊| 第三次初恋韩剧在线观看完整版| 公民凯恩电影| 天狼星行动在线观看| 塔日酒店在线观看完整版| 上海滩全集| 苍井空电影网| 记忆的证明电视剧在线观看| 木下檀檩子在线| 电竞女王:大神都叫我姐短剧全集| 我是刑警策驰影院| 晚娘2罪孽完整版免费观看视频高清| 同门往事| 雪中悍刀行50集免费观看2季| 周弘版《村枝》免费| 美姐妹牙医在线播放| 陪你逐风飞翔电视剧免费观看23| 猎狐电视剧| 美国式禁忌3| 妈妈爱上儿子同学韩剧| 梅花三弄之水云间| 占有欲强母亲免费观看电视剧| 麦乐迪在线观看| 多大点事啊电视剧在线观看,天海翼香汗女教师在线播放,剧情片全集免费播放免费 | 功夫熊猫3中英双字幕| 小学生神作文| 美容室的待遇6免费观看| 法医秦明第一季无删减版资源| 大连晓芹海参| 开原市| 《超女麦乐迪》| 奥特曼电影版| 独身向前| 华丽的外出| 4399推销员| 风月宝鉴下载| 同学妈妈| 斗罗大陆117集| 北京秋日晚霞好浪漫| 《饥饿的女儿国》完整版| 假面骑士圣刃全集免费观看中文版 | 爱的色放国语| 仙逆全集免费观看完整版| 《浪漫女家教》-电影-电影时期| 法国版《绣感》未删减版在线观看| 杭州杀妻案细节| 妹妹好色网| 21世纪爱情指南完整版全集| 世上只有爸爸好完整版电影| 上瘾电视剧16~20集| 王保长歪传| 韩剧《隐形的帽子》 | 孽海花传奇| 斯巴达HR版| 只愿君心似我心短剧免费观看全集| 亲爱的爸妈| 普法栏目剧回家14| 卖房子的女销售员在线| 美式忌保罗讳1-4是合法的吗| 回心转意伴奏| 电影叶问4| 中文字Dl幕岳和| 婆媳的战国时代演员表| 亲爱的仇敌全集免费观看| 家庭矛盾4麦乐迪在线| 高清《巨型病毒》电影| 高清望向太阳未删减| 千金女贼片花| 敌特在行动在线观看| 暧昧失温短剧全集在线观看| 飞虎神鹰演员表| 致命怪谈2电影完整版| 淫乱加班维修工电影| 延禧宫略在线观看免费| 韩国电影《美人》| 金银瓶1-5集普通话全集| 歌曲映山红简谱| 美女被破处| 人生大事电影在线高清免费观看| 爱情而已电视剧| 魔法保姆| 黄绮珊离不开你歌词| 美容室的待遇6免费观看| 河南四平调小包公| 中国直销论坛| 绿豆粉条| 最近我的妹妹样子有点怪真人电影原声| 丁一晨非你莫属| 闯天下 电视剧| 护士的秘密电外国| 看见爱台剧有无删减版本| 变形金刚4百度影音| 罗曼史在线观看| 午夜十二点正片免费看| 女超人 满天星版麦乐迪马克斯在线观看 | 蜜桃成熟时33d国语下载| 新金银悔1-5普通话| 蔷薇风暴电视剧免费观看| 雷速登闪电冲线第3部全集| 偷情家族电影| 《疯狂老师》全集观看| 反黑英雄电视剧免费观看国语全集 | 女做爰猛烈叫床99视频| melody的女超人| 冰雪尖刀连免费观看| 看没看过暮光之城的都沉默了| 女子监狱满天星法版2024| 十七岁的天空插曲| 电影婚戒| 欢乐英雄之少侠外传| 掌中之物电影西班牙在线高清免费观看 | 粉碎机电影| 方世玉2| 灭火宝贝(高压监狱)| 高清《第一次的辣妹》动漫| 樱桃电视剧高清在线观看| 花子vs倔强的驱魔| 漂亮妈妈中字开头7个字| 公主嫁到大结局| 雷政富12秒完整版| 日本熟睡的继拇HD3| 黄大妮免费观看| 万里归途电影抢先看| 扒开双腿疯狂进出爽爽爽动态照片| 我学生的妈妈5字ID正片| 《小舍得》大结局| 还珠格格第三部全集免费观看| 汪小菲直播承认未婚妻已怀孕| 神兽归笼爸妈开心| 爱情公寓3 19| 白发皇妃电视剧| 奇妙发型屋| 绝笔信女教师改口| 恋恋维纳斯电视剧泰剧免费观看| ⅩL司令全集完整版免费观看| 男按摩三级片| 《检察官》全集观看| 册亨县| 插曲45分钟免费观看电视剧第6集| 转身说爱你| 打脸亲戚:穷亲戚变豪门短剧全集|