日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

线程间同步的几种方法--互斥锁,条件变量,信号量,读写锁

發(fā)布時(shí)間:2024/4/18 编程问答 67 豆豆
生活随笔 收集整理的這篇文章主要介紹了 线程间同步的几种方法--互斥锁,条件变量,信号量,读写锁 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、互斥鎖(mutex)
  鎖機(jī)制是同一時(shí)刻只允許一個(gè)線程執(zhí)行一個(gè)關(guān)鍵部分的代碼。

1 . 初始化鎖

int pthread_mutex_init(pthread_mutex_t *mutex,const pthread_mutex_attr_t *mutexattr);

其中參數(shù) mutexattr 用于指定鎖的屬性(見下),如果為NULL則使用缺省屬性。
互斥鎖的屬性在創(chuàng)建鎖的時(shí)候指定,在LinuxThreads實(shí)現(xiàn)中僅有一個(gè)鎖類型屬性,不同的鎖類型在試圖對(duì)一個(gè)已經(jīng)被鎖定的互斥鎖加鎖時(shí)表現(xiàn)不同。當(dāng)前有四個(gè)值可供選擇:
(1)PTHREAD_MUTEX_TIMED_NP,這是缺省值,也就是普通鎖。當(dāng)一個(gè)線程加鎖以后,其余請(qǐng)求鎖的線程將形成一個(gè)等待隊(duì)列,并在解鎖后按優(yōu)先級(jí)獲得鎖。這種鎖策略保證了資源分配的公平性。
(2)PTHREAD_MUTEX_RECURSIVE_NP,嵌套鎖,允許同一個(gè)線程對(duì)同一個(gè)鎖成功獲得多次,并通過多次unlock解鎖。如果是不同線程請(qǐng)求,則在加鎖線程解鎖時(shí)重新競(jìng)爭(zhēng)。
(3)PTHREAD_MUTEX_ERRORCHECK_NP,檢錯(cuò)鎖,如果同一個(gè)線程請(qǐng)求同一個(gè)鎖,則返回EDEADLK,否則與PTHREAD_MUTEX_TIMED_NP類型動(dòng)作相同。這樣就保證當(dāng)不允許多次加鎖時(shí)不會(huì)出現(xiàn)最簡(jiǎn)單情況下的死鎖。
(4)PTHREAD_MUTEX_ADAPTIVE_NP,適應(yīng)鎖,動(dòng)作最簡(jiǎn)單的鎖類型,僅等待解鎖后重新競(jìng)爭(zhēng)。

2 . 阻塞加鎖

 int pthread_mutex_lock(pthread_mutex *mutex);

3 . 非阻塞加鎖

int pthread_mutex_trylock( pthread_mutex_t *mutex);

該函數(shù)語(yǔ)義與 pthread_mutex_lock() 類似,不同的是在鎖已經(jīng)被占據(jù)時(shí)返回 EBUSY 而不是掛起等待。
4 . 解鎖(要求鎖是lock狀態(tài),并且由加鎖線程解鎖)

 int pthread_mutex_unlock(pthread_mutex *mutex);

5 . 銷毀鎖(此時(shí)鎖必需unlock狀態(tài),否則返回EBUSY)

int pthread_mutex_destroy(pthread_mutex *mutex);

 示例代碼:

#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <pthread.h>pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; int gn;void* thread(void *arg) {printf("thread's ID is %d\n",pthread_self());pthread_mutex_lock(&mutex);gn = 12;printf("Now gn = %d\n",gn);pthread_mutex_unlock(&mutex);return NULL; }int main() {pthread_t id;printf("main thread's ID is %d\n",pthread_self());gn = 3;printf("In main func, gn = %d\n",gn);if (!pthread_create(&id, NULL, thread, NULL)) {printf("Create thread success!\n");} else {printf("Create thread failed!\n");}pthread_join(id, NULL);pthread_mutex_destroy(&mutex);return 0; }

二、條件變量(cond)

  條件變量是利用線程間共享全局變量進(jìn)行同步的一種機(jī)制。條件變量上的基本操作有:觸發(fā)條件(當(dāng)條件變?yōu)?true 時(shí));等待條件,掛起線程直到其他線程觸發(fā)條件。

1 . 初始化條件變量 

int pthread_cond_init(pthread_cond_t *cond,pthread_condattr_t *cond_attr); 盡管POSIX標(biāo)準(zhǔn)中為條件變量定義了屬性,但在Linux中沒有實(shí)現(xiàn),因此cond_attr值通常為NULL,且被忽略。

2 . 有兩個(gè)等待函數(shù)
(1)無(wú)條件等待

int pthread_cond_wait(pthread_cond_t *cond,pthread_mutex_t *mutex); (2)計(jì)時(shí)等待 int pthread_cond_timewait(pthread_cond_t *cond,pthread_mutex *mutex,const timespec *abstime); 如果在給定時(shí)刻前條件沒有滿足,則返回ETIMEOUT,結(jié)束等待,其中abstime以與time()系統(tǒng)調(diào)用相同意義的絕對(duì)時(shí)間形式出現(xiàn),0表示格林尼治時(shí)間1970年1月1日0時(shí)0分0秒。


無(wú)論哪種等待方式,都必須和一個(gè)互斥鎖配合,以防止多個(gè)線程同時(shí)請(qǐng)求(用 pthread_cond_wait() 或 pthread_cond_timedwait() 請(qǐng)求)競(jìng)爭(zhēng)條件(Race Condition)。mutex互斥鎖必須是普通鎖(PTHREAD_MUTEX_TIMED_NP)或者適應(yīng)鎖(PTHREAD_MUTEX_ADAPTIVE_NP),且在調(diào)用pthread_cond_wait()前必須由本線程加鎖(pthread_mutex_lock()),而在更新條件等待隊(duì)列以前,mutex保持鎖定狀態(tài),并在線程掛起進(jìn)入等待前解鎖。在條件滿足從而離開pthread_cond_wait()之前,mutex將被重新加鎖,以與進(jìn)入pthread_cond_wait()前的加鎖動(dòng)作對(duì)應(yīng)。

3 . 激發(fā)條件
(1)激活一個(gè)等待該條件的線程(存在多個(gè)等待線程時(shí)按入隊(duì)順序激活其中一個(gè))  

int pthread_cond_signal(pthread_cond_t *cond);

(2)激活所有等待線程

int pthread_cond_broadcast(pthread_cond_t *cond);
  • ?

4 . 銷毀條件變量

int pthread_cond_destroy(pthread_cond_t *cond); 只有在沒有線程在該條件變量上等待的時(shí)候才能銷毀這個(gè)條件變量,否則返回EBUSY

說明:

  1. pthread_cond_wait 自動(dòng)解鎖互斥量(如同執(zhí)行了pthread_unlock_mutex),并等待條件變量觸發(fā)。這時(shí)線程掛起,不占用CPU時(shí)間,直到條件變量被觸發(fā)(變量為ture)。在調(diào)用 pthread_cond_wait之前,應(yīng)用程序必須加鎖互斥量。pthread_cond_wait函數(shù)返回前,自動(dòng)重新對(duì)互斥量加鎖(如同執(zhí)行了pthread_lock_mutex)。

  2. 互斥量的解鎖和在條件變量上掛起都是自動(dòng)進(jìn)行的。因此,在條件變量被觸發(fā)前,如果所有的線程都要對(duì)互斥量加鎖,這種機(jī)制可保證在線程加鎖互斥量和進(jìn)入等待條件變量期間,條件變量不被觸發(fā)。條件變量要和互斥量相聯(lián)結(jié),以避免出現(xiàn)條件競(jìng)爭(zhēng)——個(gè)線程預(yù)備等待一個(gè)條件變量,當(dāng)它在真正進(jìn)入等待之前,另一個(gè)線程恰好觸發(fā)了該條件(條件滿足信號(hào)有可能在測(cè)試條件和調(diào)用pthread_cond_wait函數(shù)(block)之間被發(fā)出,從而造成無(wú)限制的等待)

  3. 條件變量函數(shù)不是異步信號(hào)安全的,不應(yīng)當(dāng)在信號(hào)處理程序中進(jìn)行調(diào)用。特別要注意,如果在信號(hào)處理程序中調(diào)用 pthread_cond_signal 或 pthread_cond_boardcast 函數(shù),可能導(dǎo)致調(diào)用線程死鎖

示例代碼1:

#include <stdio.h> #include <pthread.h> #include "stdlib.h" #include "unistd.h"pthread_mutex_t mutex; pthread_cond_t cond;void hander(void *arg) {free(arg);(void)pthread_mutex_unlock(&mutex); }void *thread1(void *arg) {pthread_cleanup_push(hander, &mutex);while (1) {printf("thread1 is running\n");pthread_mutex_lock(&mutex);pthread_cond_wait(&cond,&mutex);printf("thread1 applied the condition\n");pthread_mutex_unlock(&mutex);sleep(4);}pthread_cleanup_pop(0); }void *thread2(void *arg) {while (1) {printf("thread2 is running\n");pthread_mutex_lock(&mutex);pthread_cond_wait(&cond,&mutex);printf("thread2 applied the condition\n");pthread_mutex_unlock(&mutex);sleep(1);} }int main() {pthread_t thid1,thid2;printf("condition variable study!\n");pthread_mutex_init(&mutex,NULL);pthread_cond_init(&cond,NULL);pthread_create(&thid1,NULL,thread1,NULL);pthread_create(&thid2,NULL,thread2,NULL);sleep(1);do {pthread_cond_signal(&cond);} while(1);sleep(20);pthread_exit(0);return 0; }
  • 示例代碼2:
#include <pthread.h> #include <unistd.h> #include "stdio.h" #include "stdlib.h"static pthread_mutex_t mtx = PTHREAD_MUTEX_INITIALIZER; static pthread_cond_t cond = PTHREAD_COND_INITIALIZER;struct node {int n_number;struct node *n_next; }*head = NULL;static void cleanup_handler(void *arg) {printf("Cleanup handler of second thread.\n");free(arg);(void)pthread_mutex_unlock(&mtx); }static void *thread_func(void *arg) {struct node *p = NULL;pthread_cleanup_push(cleanup_handler, p);while (1) {// 這個(gè)mutex主要是用來(lái)保證pthread_cond_wait的并發(fā)性。pthread_mutex_lock(&mtx);while (head == NULL) {/* 這個(gè)while要特別說明一下,單個(gè)pthread_cond_wait功能很完善,為何* 這里要有一個(gè)while (head == NULL)呢?因?yàn)閜thread_cond_wait里的線* 程可能會(huì)被意外喚醒,如果這個(gè)時(shí)候head != NULL,則不是我們想要的情況。* 這個(gè)時(shí)候,應(yīng)該讓線程繼續(xù)進(jìn)入pthread_cond_wait* pthread_cond_wait會(huì)先解除之前的pthread_mutex_lock鎖定的mtx,* 然后阻塞在等待對(duì)列里休眠,直到再次被喚醒(大多數(shù)情況下是等待的條件成立* 而被喚醒,喚醒后,該進(jìn)程會(huì)先鎖定先pthread_mutex_lock(&mtx);,再讀取資源* 用這個(gè)流程是比較清楚的。*/pthread_cond_wait(&cond, &mtx);p = head;head = head->n_next;printf("Got %d from front of queue\n", p->n_number);free(p);}pthread_mutex_unlock(&mtx); // 臨界區(qū)數(shù)據(jù)操作完畢,釋放互斥鎖。}pthread_cleanup_pop(0);return 0; }int main(void) {pthread_t tid;int i;struct node *p;/* 子線程會(huì)一直等待資源,類似生產(chǎn)者和消費(fèi)者,但是這里的消費(fèi)者可以是多個(gè)消費(fèi)者,* 而不僅僅支持普通的單個(gè)消費(fèi)者,這個(gè)模型雖然簡(jiǎn)單,但是很強(qiáng)大。*/pthread_create(&tid, NULL, thread_func, NULL);sleep(1);for (i = 0; i < 10; i++){p = (struct node*)malloc(sizeof(struct node));p->n_number = i;pthread_mutex_lock(&mtx); // 需要操作head這個(gè)臨界資源,先加鎖。p->n_next = head;head = p;pthread_cond_signal(&cond);pthread_mutex_unlock(&mtx); //解鎖sleep(1);}printf("thread 1 wanna end the line.So cancel thread 2.\n");/* 關(guān)于pthread_cancel,有一點(diǎn)額外的說明,它是從外部終止子線程,子線程會(huì)在最近的取消點(diǎn),* 退出線程,而在我們的代碼里,最近的取消點(diǎn)肯定就是pthread_cond_wait()了。*/pthread_cancel(tid);pthread_join(tid, NULL);printf("All done -- exiting\n");return 0; }

可以看出,等待條件變量信號(hào)的用法約定一般是這樣的:

... pthread_mutex_lock(&mutex); ... pthread_cond_wait (&cond, &mutex); ... pthread_mutex_unlock (&mutex); ...

相信很多人都會(huì)有這個(gè)疑問:為什么pthread_cond_wait需要的互斥鎖不在函數(shù)內(nèi)部定義,而要使用戶定義的呢?現(xiàn)在沒有時(shí)間研究 pthread_cond_wait 的源代碼,帶著這個(gè)問題對(duì)條件變量的用法做如下猜測(cè),希望明白真相看過源代碼的朋友不吝指正。

  • pthread_cond_wait 和 pthread_cond_timewait 函數(shù)為什么需要互斥鎖?因?yàn)?#xff1a;條件變量是線程同步的一種方法,這兩個(gè)函數(shù)又是等待信號(hào)的函數(shù),函數(shù)內(nèi)部一定有須要同步保護(hù)的數(shù)據(jù)。
  • 使用用戶定義的互斥鎖而不在函數(shù)內(nèi)部定義的原因是:無(wú)法確定會(huì)有多少用戶使用條件變量,所以每個(gè)互斥鎖都須要?jiǎng)討B(tài)定義,而且管理大量互斥鎖的開銷太大,使用用戶定義的即靈活又方便,符合UNIX哲學(xué)的編程風(fēng)格(隨便推薦閱讀《UNIX編程哲學(xué)》這本好書!)。
  • 好了,說完了1和2,我們來(lái)自由猜測(cè)一下 pthread_cond_wait 函數(shù)的內(nèi)部結(jié)構(gòu)吧:
  •   int pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex){if(沒有條件信號(hào)){(1)pthread_mutex_unlock (mutex); // 因?yàn)橛脩粼诤瘮?shù)外面已經(jīng)加鎖了(這是使用約定),但是在沒有信號(hào)的情況下為了讓其他線程也能等待cond,必須解鎖。(2) 阻塞當(dāng)前線程,等待條件信號(hào)(當(dāng)然應(yīng)該是類似于中斷觸發(fā)的方式等待,而不是軟件輪詢的方式等待)... 有信號(hào)就繼續(xù)執(zhí)行后面。(3) pthread_mutex_lock (mutex); // 因?yàn)橛脩粼诤瘮?shù)外面要解鎖(這也是使用約定),所以要與1呼應(yīng)加鎖,保證用戶感覺依然是自己加鎖、自己解鎖。} ...}

    三、 信號(hào)量

     如同進(jìn)程一樣,線程也可以通過信號(hào)量來(lái)實(shí)現(xiàn)通信,雖然是輕量級(jí)的。
    線程使用的基本信號(hào)量函數(shù)有四個(gè):

      #include <semaphore.h>
    • 1 . 初始化信號(hào)量
    int sem_init (sem_t *sem , int pshared, unsigned int value);
    • 參數(shù):

    sem - 指定要初始化的信號(hào)量;
    pshared - 信號(hào)量 sem 的共享選項(xiàng),linux只支持0,表示它是當(dāng)前進(jìn)程的局部信號(hào)量;
    value - 信號(hào)量 sem 的初始值。

    2 . 信號(hào)量值加1
    給參數(shù)sem指定的信號(hào)量值加1。

       int sem_post(sem_t *sem);
    • 3 . 信號(hào)量值減1

    給參數(shù)sem指定的信號(hào)量值減1。

       int sem_wait(sem_t *sem);
    • 如果sem所指的信號(hào)量的數(shù)值為0,函數(shù)將會(huì)等待直到有其它線程使它不再是0為止。

    4 . 銷毀信號(hào)量
    銷毀指定的信號(hào)量。

      int sem_destroy(sem_t *sem);
    • 示例代碼:
    #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <pthread.h> #include <semaphore.h> #include <errno.h>#define return_if_fail(p) if((p) == 0){printf ("[%s]:func error!\n", __func__);return;}typedef struct _PrivInfo {sem_t s1;sem_t s2;time_t end_time; }PrivInfo;static void info_init (PrivInfo* prifo); static void info_destroy (PrivInfo* prifo); static void* pthread_func_1 (PrivInfo* prifo); static void* pthread_func_2 (PrivInfo* prifo);int main (int argc, char** argv) {pthread_t pt_1 = 0;pthread_t pt_2 = 0;int ret = 0;PrivInfo* prifo = NULL;prifo = (PrivInfo* )malloc (sizeof (PrivInfo));if (prifo == NULL) {printf ("[%s]: Failed to malloc priv.\n");return -1;}info_init (prifo);ret = pthread_create (&pt_1, NULL, (void*)pthread_func_1, prifo);if (ret != 0) {perror ("pthread_1_create:");}ret = pthread_create (&pt_2, NULL, (void*)pthread_func_2, prifo);if (ret != 0) {perror ("pthread_2_create:");}pthread_join (pt_1, NULL);pthread_join (pt_2, NULL);info_destroy (prifo);return 0; }static void info_init (PrivInfo* prifo) {return_if_fail (prifo != NULL);prifo->end_time = time(NULL) + 10;sem_init (&prifo->s1, 0, 1);sem_init (&prifo->s2, 0, 0);return; }static void info_destroy (PrivInfo* prifo) {return_if_fail (prifo != NULL);sem_destroy (&prifo->s1);sem_destroy (&prifo->s2);free (prifo);prifo = NULL;return; }static void* pthread_func_1 (PrivInfo* prifo) {return_if_fail (prifo != NULL);while (time(NULL) < prifo->end_time){sem_wait (&prifo->s2);printf ("pthread1: pthread1 get the lock.\n");sem_post (&prifo->s1);printf ("pthread1: pthread1 unlock\n");sleep (1);}return; }static void* pthread_func_2 (PrivInfo* prifo) {return_if_fail (prifo != NULL);while (time (NULL) < prifo->end_time){sem_wait (&prifo->s1);printf ("pthread2: pthread2 get the unlock.\n");sem_post (&prifo->s2);printf ("pthread2: pthread2 unlock.\n");sleep (1);}return;}

    四 讀寫鎖
    4.1 注意事項(xiàng)

    • 1.如果一個(gè)線程用讀鎖鎖定了臨界區(qū),那么其他線程也可以用讀鎖來(lái)進(jìn)入臨界區(qū),這樣就可以多個(gè)線程并行操作。但這個(gè)時(shí)候,如果再進(jìn)行寫鎖加鎖就會(huì)發(fā)生阻塞,寫鎖請(qǐng)求阻塞后,后面如果繼續(xù)有讀鎖來(lái)請(qǐng)求,這些后來(lái)的讀鎖都會(huì)被阻塞!這樣避免了讀鎖長(zhǎng)期占用資源,防止寫鎖饑餓!
    • 2.如果一個(gè)線程用寫鎖鎖住了臨界區(qū),那么其他線程不管是讀鎖還是寫鎖都會(huì)發(fā)生阻塞!

    4.2 常用接口
    1. 初始化:

    int pthread_rwlock_init(pthread_rwlock_t *restrict rwlock, const pthread_rwlockattr_t *restrict attr);
    • 讀寫加鎖
    int pthread_rwlock_rdlock(pthread_rwlock_t *rwlock); int pthread_rwlock_wrlock(pthread_rwlock_t *rwlock); int pthread_rwlock_unlock(pthread_rwlock_t *rwlock);int pthread_rwlock_tryrdlock(pthread_rwlock_t *rwlock); int pthread_rwlock_trywrlock(pthread_rwlock_t *rwlock);int pthread_rwlock_timedrdlock(pthread_rwlock_t *restrict rwlock, const struct timespec *restrict abs_timeout); int pthread_rwlock_timedwrlock(pthread_rwlock_t *restrict rwlock, const struct timespec *restrict abs_timeout);

    3.銷毀鎖

    int pthread_rwlock_destroy(pthread_rwlock_t *rwlock);
    • 應(yīng)用實(shí)例:
    #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <pthread.h>/* 初始化讀寫鎖 */ pthread_rwlock_t rwlock = PTHREAD_RWLOCK_INITIALIZER; /* 全局資源 */ int global_num = 10;void err_exit(const char *err_msg) {printf("error:%s\n", err_msg);exit(1); }/* 讀鎖線程函數(shù) */ void *thread_read_lock(void *arg) {char *pthr_name = (char *)arg;while (1){/* 讀加鎖 */pthread_rwlock_rdlock(&rwlock);printf("線程%s進(jìn)入臨界區(qū),global_num = %d\n", pthr_name, global_num);sleep(1);printf("線程%s離開臨界區(qū)...\n", pthr_name);/* 讀解鎖 */pthread_rwlock_unlock(&rwlock);sleep(1);}return NULL; }/* 寫鎖線程函數(shù) */ void *thread_write_lock(void *arg) {char *pthr_name = (char *)arg;while (1){/* 寫加鎖 */pthread_rwlock_wrlock(&rwlock);/* 寫操作 */global_num++;printf("線程%s進(jìn)入臨界區(qū),global_num = %d\n", pthr_name, global_num);sleep(1);printf("線程%s離開臨界區(qū)...\n", pthr_name);/* 寫解鎖 */pthread_rwlock_unlock(&rwlock);sleep(2);}return NULL; }int main(void) {pthread_t tid_read_1, tid_read_2, tid_write_1, tid_write_2;/* 創(chuàng)建4個(gè)線程,2個(gè)讀,2個(gè)寫 */if (pthread_create(&tid_read_1, NULL, thread_read_lock, "read_1") != 0)err_exit("create tid_read_1");if (pthread_create(&tid_read_2, NULL, thread_read_lock, "read_2") != 0)err_exit("create tid_read_2");if (pthread_create(&tid_write_1, NULL, thread_write_lock, "write_1") != 0)err_exit("create tid_write_1");if (pthread_create(&tid_write_2, NULL, thread_write_lock, "write_2") != 0)err_exit("create tid_write_2");/* 隨便等待一個(gè)線程,防止main結(jié)束 */if (pthread_join(tid_read_1, NULL) != 0)err_exit("pthread_join()");return 0; }

    總結(jié)

    以上是生活随笔為你收集整理的线程间同步的几种方法--互斥锁,条件变量,信号量,读写锁的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    免费在线观看黄网站 | 永久免费的av电影 | 91高清在线 | 日韩资源在线观看 | 国产成人av片| 狠狠色丁香婷婷 | 久久成人高清视频 | 国产精品久久久久一区二区三区共 | 国产精品美女久久久网av | 国产一区黄色 | 久久影院精品 | 欧美在线视频一区二区三区 | 亚洲成人av在线播放 | 麻豆激情电影 | 一区二区三区四区五区在线视频 | 97超碰在线播放 | 福利视频午夜 | 丁香导航| 免费人成在线观看网站 | 国产成人久久av977小说 | 成人亚洲精品久久久久 | 欧美亚洲久久 | 欧美91精品久久久久国产性生爱 | 天堂网av在线 | 久久精品国产亚洲精品2020 | 四虎www com| 一区二区三区四区五区在线 | 国产精品99精品 | 国产精品大片 | 欧美精品久 | 欧美成人xxxx | 亚洲欧美视频在线播放 | 黄色免费网站下载 | 亚洲精品网址在线观看 | 久久综合色影院 | 亚洲一区二区三区在线看 | 九九精品视频在线看 | 久久久久观看 | 国产不卡视频在线播放 | 久久不卡电影 | 伊人伊成久久人综合网小说 | 久久精品视频18 | 午夜精品影院 | 在线精品亚洲一区二区 | 51精品国自产在线 | 中文字幕人成不卡一区 | 久久久久久国产精品美女 | www.色com| 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 一区二区中文字幕在线观看 | 99精品国产兔费观看久久99 | 久久一精品 | 久久久福利 | 97超碰免费在线观看 | av中文天堂在线 | 男女啪啪视屏 | 久久不见久久见免费影院 | 亚洲精品视频网址 | 一区二区 久久 | 亚洲精品午夜久久久久久久 | 天天干天天干天天色 | 久草免费在线观看视频 | 一级黄色a视频 | 中文字幕在线看视频国产中文版 | 亚洲精品国产精品国自 | 免费美女av | 精品国产一区二区三区四区vr | 国产精品毛片一区视频播 | 国产一区国产二区在线观看 | av在线电影播放 | 麻豆你懂的 | 国产在线精品国自产拍影院 | 国产成人久久 | 精品国产区在线 | 黄色免费网 | 精品人妖videos欧美人妖 | 亚洲精品中文在线资源 | 蜜桃视频日本 | 成人永久免费 | 亚洲 欧美 国产 va在线影院 | 亚洲精品视频二区 | 中文字幕在线免费 | 久久综合久久综合这里只有精品 | 成人a级免费视频 | 91chinesexxx| 五月天色综合 | 成人免费电影 | 一区二区三区免费看 | 手机在线视频福利 | 久久综合久色欧美综合狠狠 | 成人一区二区在线观看 | 国产成人精品亚洲日本在线观看 | 天天做天天爱天天爽综合网 | 午夜视频在线观看一区二区 | 久草国产视频 | 久草视频在线免费看 | 中文日韩在线视频 | 欧美一级免费高清 | av色网站 | 亚洲区精品视频 | 久久理论电影网 | 操综合| 狠狠色丁香婷婷综合欧美 | 久久精品久久久精品美女 | 欧美久久久久久久久 | 久久精品99国产精品 | 337p欧美| 色婷婷综合久久久中文字幕 | 国产午夜三级一区二区三 | 久久黄色美女 | 三级视频日韩 | www麻豆视频 | 97超碰超碰 | 国产成人精品亚洲精品 | 久久久免费视频播放 | 国内精品中文字幕 | 麻豆国产视频 | 人人添人人澡 | 中文字幕 国产视频 | 色婷婷福利视频 | 色狠狠久久av五月综合 | 亚洲做受高潮欧美裸体 | 国产操在线 | 国产一级黄色免费看 | 欧美久久久久久久久久 | 国产精品美女久久久网av | 夜夜夜夜爽 | 国产成人免费在线 | 久久久av免费 | 四虎国产精品免费 | 欧美成亚洲| 国产精品福利一区 | 亚洲蜜桃av | aaa免费毛片| 日韩免费视频在线观看 | 久久午夜色播影院免费高清 | 伊甸园av在线 | 精品久久久久久久久久久院品网 | 免费福利在线观看 | 最近中文字幕完整视频高清1 | 黄色免费观看网址 | 中文字幕一区二区三区四区在线视频 | 午夜天使 | 一区二区三区国 | 三级av在线播放 | 日本午夜免费福利视频 | 国产精品成人av电影 | 亚洲成人家庭影院 | 日批视频在线观看免费 | 69久久久| 日本在线精品视频 | 亚洲精品久久久蜜桃直播 | 久久精品这里精品 | 免费a v在线 | 日韩性xxxx | 亚洲黄色大片 | 久久国产精品免费一区 | 国产中文字幕在线播放 | 欧美成人aa | 亚洲人人网 | 国产精彩视频 | 91在线91拍拍在线91 | 久久99在线 | 91天堂素人约啪 | 亚洲成人资源在线观看 | 日韩欧美精品在线 | 丁香六月婷婷开心婷婷网 | 免费在线观看亚洲视频 | 五月花激情 | 欧美一级大片在线观看 | 444av| 日本不卡一区二区三区在线观看 | 天天操,夜夜操 | av在观看| 91插插插网站 | 亚洲激情 | 日韩精品一区二区三区免费观看 | 在线免费中文字幕 | 最近日本韩国中文字幕 | 国产最新视频在线 | 国产精品视频免费在线观看 | 成年人免费电影 | 国产精品美女久久久久久网站 | 国产精品视频永久免费播放 | 国产在线一线 | 成人在线观看免费 | 国产最新视频在线观看 | 色婷婷www | 99视频一区二区 | va视频在线 | 成人av电影在线 | 91综合在线| 在线91视频 | 99精品欧美一区二区三区黑人哦 | 日日天天狠狠 | 免费观看成人网 | 日韩专区av | 久久综合精品国产一区二区三区 | 91最新地址永久入口 | 999超碰 | 欧美亚洲成人免费 | av888av.com | 91精品91| 成人av资源在线 | 又黄又爽又色无遮挡免费 | 波多野结衣亚洲一区二区 | 日韩免费电影一区二区三区 | 91香蕉视频720p | 91黄色视屏 | 欧美精品一区二区在线播放 | 久久精品一二三区 | 国产电影一区二区三区四区 | 99久久精品国产一区二区成人 | 日韩xxx视频 | 91精品国产综合久久福利 | 色偷偷88欧美精品久久久 | 激情丁香综合 | 狠狠色伊人亚洲综合网站色 | 日韩黄色免费 | 欧美 激情 国产 91 在线 | 91免费版在线观看 | 中文字幕乱偷在线 | 91香蕉视频色版 | av成人在线播放 | 久久久久免费精品视频 | 中文字幕电影高清在线观看 | 精品在线观看一区二区三区 | 欧美一级免费片 | 成人福利在线观看 | 欧美国产日韩在线观看 | 欧美一级电影片 | 亚洲91精品在线观看 | 久久精品视频网 | 亚洲精品乱码久久久久v最新版 | 91在线看网站 | 日日夜夜中文字幕 | 久久精品一区二区三区国产主播 | 亚洲欧美激情插 | 黄污在线看 | 亚在线播放中文视频 | 日韩av伦理片 | a√天堂资源 | 三级黄色理论片 | 不卡国产在线 | 日韩精品一区二区三区不卡 | 一级片免费观看视频 | 五月婷婷色播 | 久久一视频| 国产成人av片 | 亚洲a免费| 91黄色免费网站 | 久久久精品亚洲 | 日韩成人不卡 | 亚州av一区 | 日韩电影中文字幕在线观看 | 久爱综合 | 欧美日韩一区二区三区视频 | 波多野结衣视频网址 | 欧美性生交大片免网 | 精品国产乱码久久久久久久 | 涩涩爱夜夜爱 | 最近日本mv字幕免费观看 | 国产精品s色 | 国产偷在线 | 激情av在线资源 | 精品综合久久 | 亚洲欧美一区二区三区孕妇写真 | 亚洲va欧洲va国产va不卡 | 久久与婷婷 | 一级片黄色片网站 | 婷婷视频在线 | 激情五月播播久久久精品 | 在线亚洲播放 | 99久在线精品99re8热视频 | 中文字幕在线观看第一区 | 综合av在线 | 色婷婷88av视频一二三区 | 日本爱爱免费视频 | 国产va在线 | 久久艹艹| 四虎影视国产精品免费久久 | 成人在线视频免费观看 | 国产在线观 | 成人一级免费视频 | 久久免费在线观看 | 亚洲免费成人av电影 | 日日干天天干 | 中文乱码视频在线观看 | 日韩久久电影 | 色综合www| 亚洲爱爱视频 | 一区二区国产精品 | av成人免费在线观看 | 国产一区视频导航 | 热久久视久久精品18亚洲精品 | 欧美性大战| 人人插人人爱 | 亚洲激情在线观看 | 一区二区三区影院 | 美女性爽视频国产免费app | 在线观看网站黄 | 又黄又爽的免费高潮视频 | av资源中文字幕 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 国内精品久久久久久久久久久久 | 午夜久久久影院 | 国产区网址 | 久久新视频 | 正在播放日韩 | 亚洲aaa毛片| 亚洲永久av | 在线亚洲精品 | 欧美日本啪啪无遮挡网站 | 不卡的av在线 | 特级毛片网 | 久久看片网站 | 亚洲永久精品一区 | 国产在线一线 | 粉嫩av一区二区三区四区在线观看 | 日韩激情小视频 | 国产va精品免费观看 | 在线视频日韩欧美 | 久草电影网 | 一区 二区电影免费在线观看 | 91在线一区 | 97国产小视频 | 天天操天天操 | 亚洲自拍偷拍色图 | 91看片在线播放 | 粉嫩一区二区三区粉嫩91 | 日韩黄在线观看 | 欧美日韩国产精品一区二区三区 | 91色一区二区三区 | 亚洲精品在线免费 | 国产精品原创av片国产免费 | 在线精品一区二区 | 日本女人逼 | 国产 在线 日韩 | 国产免费观看久久黄 | 夜夜躁狠狠躁日日躁视频黑人 | 91久久精品一区二区二区 | 五月婷婷中文网 | 激情久久网 | 色停停五月天 | 人人爱人人舔 | 日韩精品中文字幕在线观看 | 国产清纯在线 | 69亚洲视频 | 中文一二区| 最新极品jizzhd欧美 | 91在线超碰 | 国产视频一区二区在线播放 | 九色自拍视频 | www.黄色片网站 | www.97视频 | 精品欧美小视频在线观看 | 一区二区中文字幕在线播放 | 成年人天堂com | 亚洲精品一区二区三区新线路 | 综合色在线 | 福利电影一区二区 | 亚洲3级 | 欧美爽爽爽 | 一区二区三区四区不卡 | 日本精品一二区 | 日韩av电影中文字幕在线观看 | 在线之家官网 | 亚洲精品短视频 | 日日夜夜综合网 | 久久久午夜剧场 | 天天干天天做天天爱 | 久草免费在线视频观看 | 欧美日韩高清 | 九九热99视频 | 黄污视频大全 | 天天干人人干 | 成人午夜精品 | 麻豆视屏 | 亚洲永久精品在线观看 | 日韩va在线观看 | 久久国产成人午夜av影院宅 | 久久精品亚洲一区二区三区观看模式 | 免费在线播放av电影 | 在线成人短视频 | 久久好看| 国产精品久久久久久久久久三级 | 全久久久久久久久久久电影 | 久久精品看片 | 911精品视频 | 五月天九九 | 日本护士撒尿xxxx18 | 色吊丝在线永久观看最新版本 | 国产自产在线视频 | 99热这里只有精品在线观看 | 精品在线视频一区 | 精品久久电影 | 亚洲在线精品视频 | 天天操天天干天天综合网 | 久久99国产视频 | 日日日日干 | 欧美激情视频一二三区 | 一区二区视频在线观看免费 | 免费在线观看毛片网站 | 久久一区国产 | 天天爱天天射天天干天天 | 中日韩三级视频 | 伊人色综合久久天天网 | 在线激情av电影 | 久久人人做 | 欧美日韩精品在线观看 | 中文字幕视频三区 | 人人爽人人干 | 一级片免费观看视频 | 亚洲三级在线免费观看 | 玖玖玖国产精品 | 久久久久亚洲精品国产 | 亚洲激情 在线 | 精品免费久久 | 六月色播| 国产精品99久久99久久久二8 | 国产中文自拍 | 伊人五月天婷婷 | 国产人成精品一区二区三 | 国产91成人在在线播放 | 日韩一区二区免费在线观看 | 欧美日韩中文国产 | 91成人在线观看高潮 | 日韩欧美在线国产 | 91av亚洲| 狠色在线 | 久久香蕉影视 | 色偷偷av男人天堂 | 日日干日日色 | av免费观看高清 | 国产成人亚洲精品自产在线 | 色偷偷人人澡久久超碰69 | 激情久久综合 | 中文字幕一区二区三区四区 | 久草在线视频免费资源观看 | 91正在播放 | 日日摸日日添夜夜爽97 | 亚洲欧洲日韩在线观看 | 国产视频欧美视频 | 手机看片 | 国产资源在线免费观看 | 国产成人精品一区二区三区免费 | 日日草av| 日韩免费在线播放 | 天天干 天天摸 天天操 | 国产精品亚洲片夜色在线 | 最近高清中文字幕 | 免费毛片一区二区三区久久久 | 亚洲高清资源 | 亚洲最大成人免费网站 | 天天爱av导航| 人人爱天天操 | 99精品免费观看 | 久久久影视 | 天天插伊人 | 中文字幕在线免费 | 97香蕉久久超级碰碰高清版 | 夜夜高潮夜夜爽国产伦精品 | 成人av资源在线 | 欧美日韩1区 | 在线国产一区二区三区 | 免费黄a | 成人在线视频免费观看 | 五月婷婷在线观看视频 | 黄色毛片视频免费观看中文 | 四虎国产精品免费观看视频优播 | 在线观看免费黄视频 | 日本激情视频中文字幕 | 中文av在线天堂 | 婷婷色 亚洲 | 国产精品麻豆视频 | 精品视频免费久久久看 | 久久久96 | 人人爽人人爽av | 色偷偷网站视频 | 天天操操操操操 | 久久久久久国产一区二区三区 | 亚洲男人天堂2018 | 日本爽妇网 | 免费视频久久久久久久 | 91精品爽啪蜜夜国产在线播放 | 91成人在线视频 | 中文字幕国产一区 | 婷婷色影院 | 亚洲精品黄色片 | 黄色免费看片网站 | 999久久久精品视频 日韩高清www | 97精品免费视频 | 不卡的av在线 | 亚洲一区久久 | 久久久久久国产精品999 | 久久精品欧美一区 | 欧洲亚洲国产视频 | 蜜桃视频在线视频 | 久久免视频 | 欧美亚洲另类在线视频 | 欧美日韩在线看 | 日韩字幕在线 | 久久999精品| 韩国av永久免费 | 91少妇精拍在线播放 | 国产一区视频免费在线观看 | 伊人永久 | 日韩成人精品在线观看 | 国产精品视频99 | 久久久久成人免费 | 久久久久免费精品国产小说色大师 | 久久欧洲视频 | 婷婷色在线 | 亚洲日本欧美在线 | 国产69久久 | 视频在线观看日韩 | 日韩免费看片 | 99欧美| 日韩成人精品一区二区三区 | 亚洲va欧美va | 午夜精品久久久久99热app | 久久人人干 | 91精品999| 国产123区在线观看 国产精品麻豆91 | 狠狠亚洲| 亚洲少妇天堂 | 日韩视频一区二区三区在线播放免费观看 | 超碰97国产 | 欧洲精品久久久久毛片完整版 | 欧美精选一区二区三区 | 日韩特黄av | 黄色一区二区在线观看 | 日本精品一区二区三区在线播放视频 | 中文字幕网址 | 97超碰中文字幕 | 欧美日韩精品国产 | 欧美va天堂va视频va在线 | 精品久久视频 | 日韩 在线观看 | 国产录像在线观看 | 91视频在线免费下载 | 九月婷婷人人澡人人添人人爽 | 玖玖色在线观看 | 日韩免费中文 | 欧美精品久久久久久久久久 | 91精品国自产在线观看 | 超碰97公开 | av三级在线免费观看 | 激情综合网天天干 | 日韩在线观看视频中文字幕 | 国产精品99久久久久 | 久久久国产精品久久久 | av大片网址| 国产三级在线播放 | 日本成人a | 91成人黄色 | 四虎国产 | 国产99久久久精品 | www.香蕉视频| 久久免费国产视频 | 正在播放国产精品 | 狠狠色狠狠色综合日日小说 | 91在线porny国产在线看 | 狠狠狠的干 | 亚洲精品一区二区久 | 国产男女爽爽爽免费视频 | 午夜精品视频福利 | 日本精品va在线观看 | 天无日天天操天天干 | 成人理论在线观看 | 91视频免费看网站 | 久久99欧美 | 久久se视频| 91一区二区三区久久久久国产乱 | 久久久五月天 | av资源网在线播放 | 亚洲精品乱码久久 | 91午夜精品 | 日韩欧美在线视频一区二区 | 久草网视频 | av理论电影 | 中文字幕日韩无 | 91黄色免费看 | 亚洲精品视频在线观看免费视频 | 国产精品久久久 | 少妇视频一区 | 91毛片在线观看 | 亚洲影视九九影院在线观看 | 91精品国产麻豆国产自产影视 | 天天操狠狠操 | 欧美伦理一区二区 | 天天综合导航 | 亚洲综合精品在线 | 国产色网 | 久草在线视频资源 | 麻花豆传媒一二三产区 | 欧美一区二区视频97 | 99视频这里有精品 | 黄色视屏av | 亚洲天天 | 又爽又黄又无遮挡网站动态图 | 懂色av一区二区三区蜜臀 | 日韩毛片在线一区二区毛片 | 色就干| 国内揄拍国内精品 | 免费视频你懂的 | www.久艹| 狠狠操在线| 久久激情视频网 | 欧美性生活大片 | 久久久久久国产精品亚洲78 | 色婷婷六月 | 在线亚洲欧美视频 | 91在线永久 | 综合天天网 | 91久久影院 | 亚洲国产中文字幕在线视频综合 | 国产精品综合久久久久 | 97超碰在线免费 | 欧美va天堂va视频va在线 | 精品麻豆入口免费 | 久草爱| 国产97色在线| 亚洲国产精品成人精品 | 中文字幕日韩国产 | 又长又大又黑又粗欧美 | www.婷婷色 | 夜夜操狠狠操 | 日韩成人黄色 | 日韩久久久 | 精品国产一区二区三区久久久蜜月 | 午夜视频在线观看一区 | 亚洲综合五月 | 国产一区二区网址 | 超碰免费97| 久久免费国产视频 | 五月天久久精品 | 不卡中文字幕在线 | 亚洲精品乱码久久久久久 | 国产破处精品 | 久久在视频 | 麻豆视频国产在线观看 | 狠狠操操| 日韩免费| 久久国产精品久久久 | 亚洲妇女av | www最近高清中文国语在线观看 | 97视频久久久 | 国产首页 | 免费观看v片在线观看 | 丁香五婷 | av久久在线 | 中文字幕乱码亚洲精品一区 | 97日日碰人人模人人澡分享吧 | 亚洲理论片 | 中国一级特黄毛片大片久久 | 国产精品小视频网站 | 久久深夜福利免费观看 | 特级大胆西西4444www | 国产97在线播放 | 色先锋资源网 | www免费视频com━ | 成人a免费 | 97色视频在线| 久久人人爽人人爽人人片av软件 | 99久在线精品99re8热视频 | 五月婷婷六月丁香在线观看 | av不卡中文| 日本韩国精品在线 | 久久激情精品 | 国产99久久久国产精品成人免费 | 日批视频在线 | 探花视频在线观看+在线播放 | 亚洲精品小区久久久久久 | 一区二区激情视频 | 成人观看 | 久久只精品99品免费久23小说 | 中文字幕在线播放av | 国产v亚洲v | 亚洲午夜精品一区 | 日韩av在线小说 | 精品国产精品一区二区夜夜嗨 | 在线免费观看视频你懂的 | 超碰人人做 | 日韩女同一区二区三区在线观看 | 免费网站黄色 | 麻豆一区在线观看 | 婷婷丁香狠狠爱 | 99精品久久只有精品 | 97偷拍视频| 久久精品5 | 亚洲精品在线观看网站 | 欧美成人黄色片 | 欧美日韩精品在线观看 | 黄色三级免费片 | 在线观看视频国产 | 久久国产精品99国产 | 2021国产在线 | 黄色网中文字幕 | 亚洲女同ⅹxx女同tv | 黄色软件在线看 | 亚洲jizzjizz日本少妇 | 国产黄色片在线免费观看 | 少妇搡bbbb搡bbb搡忠贞 | 久草视频看看 | h文在线观看免费 | 国产精品色婷婷视频 | 狠狠色丁香婷婷综合欧美 | 日本最新高清不卡中文字幕 | 成人午夜电影在线 | 中文字幕在线观看播放 | 亚洲成人精品影院 | 日韩一级黄色av | 日韩二区在线播放 | 亚洲aⅴ在线观看 | 亚洲 欧洲av | 男女拍拍免费视频 | 国产手机视频在线播放 | 国产精品精品国产色婷婷 | 91成人精品视频 | av电影亚洲 | 免费在线观看av网址 | 黄色tv视频| 黄污在线观看 | 精品国产一区二区三区久久久 | 久久综合免费 | 亚洲第一区在线播放 | www黄色com | 久久久午夜精品福利内容 | 中字幕视频在线永久在线观看免费 | 亚洲在线黄色 | 久久热亚洲| 99c视频在线 | 日本xxxxav| 天天操天天是 | 夜夜夜夜夜夜操 | 亚洲欧美日韩一级 | 国产免费午夜 | 天天插天天狠天天透 | 999亚洲国产996395 | 欧美日本国产在线观看 | 日韩精品一区二区免费视频 | 最近最新mv字幕免费观看 | 日韩欧美网站 | 亚洲精品在线观看不卡 | 成人av在线亚洲 | 国产色在线观看 | 久久国产精品99久久久久久丝袜 | 91视频免费网站 | 免费福利片 | 欧美激情在线看 | 一区二区三区四区五区六区 | 日韩精品视频一二三 | 成年人免费电影在线观看 | a级成人毛片 | 免费电影一区二区三区 | 日韩网站一区二区 | 久草在线免 | 欧美日韩一区二区视频在线观看 | 免费观看全黄做爰大片国产 | 欧美精彩视频在线观看 | 国产午夜视频在线观看 | 免费看污污视频的网站 | 色诱亚洲精品久久久久久 | 久久99热这里只有精品 | 国产精品中文字幕在线观看 | 欧洲亚洲国产视频 | 2023国产精品自产拍在线观看 | 日韩大片免费观看 | 天天操福利视频 | 伊人狠狠 | 成年人免费电影在线观看 | 日韩成人精品在线观看 | 美腿丝袜av | 国产免费成人av | 国产综合精品一区二区三区 | 欧美色一色 | 久久福利影视 | 天天操天天干天天爽 | 国产成人精品av在线 | 国产 一区二区三区 在线 | 中文字幕在线观看资源 | 国产精品淫片 | 操操操夜夜操 | 日韩免费高清在线 | 狠狠躁夜夜躁人人爽超碰91 | 一区二区成人国产精品 | 99久高清在线观看视频99精品热在线观看视频 | 国产二区电影 | 高清av免费看 | 黄色影院在线免费观看 | 欧美午夜视频在线 | 久久午夜网 | 中文字幕乱码亚洲精品一区 | 久久久久成人精品免费播放动漫 | 欧美片网站yy | 中文字幕一区二区三区四区 | 成人教育av| 黄色av电影网 | 深爱激情站 | 最近免费中文字幕 | 在线播放av网址 | 日韩综合在线观看 | 国产一区二区三区免费观看视频 | 97香蕉视频 | 亚洲 综合 激情 | 久久免费观看少妇a级毛片 久久久久成人免费 | 亚洲v欧美v国产v在线观看 | 欧美成人播放 | 蜜桃传媒一区二区 | 国产手机视频在线 | 一区二区激情视频 | 欧美aⅴ在线观看 | 久久国产精品一国产精品 | 国产成人精品综合久久久久99 | 久草久草视频 | 国产69精品久久久久9999apgf | 国产1区在线 | 在线免费观看国产视频 | av在线小说| 中文字幕 二区 | 色网站中文字幕 | 日韩欧美电影在线 | 欧美做受xxx | 成人动图| 欧美日韩裸体免费视频 | 国产精品久久久久久久久久久久久久 | 久久香蕉国产精品麻豆粉嫩av | 综合色影院 | 中文资源在线播放 | 欧美色图p | 2019免费中文字幕 | 欧美另类网站 | 六月丁香激情综合色啪小说 | 91大神免费在线观看 | 亚洲国产精品推荐 | 久久系列 | 免费看黄色大全 | 九七视频在线 | 国产精品久久久久av福利动漫 | 亚洲少妇激情 | 3d黄动漫免费看 | 国产精品精品国产婷婷这里av | 看av在线| 深夜激情影院 | 毛片二区| 国产精品欧美日韩 | 黄色精品视频 | 国产又粗又硬又爽视频 | 国产做爰视频 | 美女免费视频观看网站 | 97在线观看免费高清完整版在线观看 | 国产成人精品区 | 日韩激情影院 | 日韩精品视频网站 | 欧美视频日韩视频 | 久久免费高清视频 | 久久免费视频在线观看6 | 男女啪啪免费网站 | 国产一级大片在线观看 | 亚洲综合五月 | 在线超碰av | 7799av | 亚洲精品视频免费在线 | 国产在线无 | 国产一级在线看 | 在线香蕉视频 | 麻豆91精品视频 | 精品电影一区 | 久久福利剧场 | 欧美成人一二区 | 亚洲一级特黄 | 麻豆小视频在线观看 | av高清一区二区三区 | 国产精品一区二区三区在线播放 | 91原创在线观看 | 免费视频你懂的 | av在线免费网站 | 国产拍揄自揄精品视频麻豆 | 成av人电影| 五月天婷婷视频 | 国产精品电影一区 | 国内精品久久久久影院一蜜桃 | 精品在线免费观看 | 亚洲精品小视频 | 九九久久国产精品 | 福利视频区 | 一区二区三区高清在线观看 | 久久久99久久 | 欧美精品在线一区二区 | 日韩一区二区免费播放 | 国产精品久久久久aaaa九色 | 黄色激情网址 | 日韩免 | 久久伊人八月婷婷综合激情 | 婷婷综合五月 | 国产高清中文字幕 | 欧美黄色免费 | 欧美日韩中文国产一区发布 | www.成人久久| 久久久久久久久久久免费视频 | av看片网| 免费的黄色的网站 | 日韩视频免费在线观看 | 国产高清在线永久 | 999国内精品永久免费视频 | 欧美精品中文在线免费观看 | 在线观看日韩国产 | 一区二区三区影院 | av在线日韩 | 人人dvd| 国内精品久久久久久久久 | 国产亚洲激情视频在线 | 天天操夜夜想 | 国产精品一区二区三区视频免费 | 成人免费在线观看电影 | 瑞典xxxx性hd极品 | 国产亚洲欧美在线视频 | 狠狠干,狠狠操 | 色的网站在线观看 | 欧美日韩国产伦理 | 国产1区在线 | 久久手机精品视频 | 欧美极度另类性三渗透 | 狠狠色狠狠色 | 久久久久久久久久影视 | 欧美一级性视频 | 美女视频一区 | 91日本在线播放 | 免费看一级特黄a大片 | 91日韩免费 | www久久精品 | 久久久久久久久影视 | 黄色av电影一级片 | 九九导航 | 国产精品高潮呻吟久久av无 | 最新免费av在线 | 国产区网址| 国产一区网| 视频一区在线播放 | 国产精华国产精品 | 四虎海外影库www4hu | 欧美va天堂va视频va在线 | www.黄色片网站 | 久草在线视频免赞 | 精品国产91亚洲一区二区三区www | 国产在线观看,日本 | 91精品婷婷国产综合久久蝌蚪 | 久久综合狠狠综合 | 激情开心站| 免费看黄的视频 | 人人爽人人爽av | 色婷婷激情电影 | 久久一区国产 | 日韩免费av片 | 成人一级在线 | 人人澡av| 久久五月婷婷丁香 | 免费久久视频 | 国产在线精品一区二区三区 | 欧美久久成人 | 久久久久国产一区二区 | av解说在线观看 | 精品国产精品久久一区免费式 | 精品免费一区二区三区 | 91看片网址 | 欧美日韩中文字幕视频 | 麻豆精品传媒视频 | 成人aaa毛片 | 五月天婷婷免费视频 | 亚洲日本va中文字幕 | 97精品超碰一区二区三区 | 日韩一区精品 | 亚洲va在线va天堂va偷拍 | 不卡的av电影在线观看 | 欧美一二三区播放 | 日韩网站免费观看 | 天海翼一区二区三区免费 | 日日操天天操夜夜操 | 国产精品久久9 | 人人藻人人澡人人爽 | 久久精品网站免费观看 | 成人av在线直播 | 欧美日韩中文在线视频 | 超碰人人91 | 97电影手机 | 色香蕉在线视频 | 天堂av网站 | 天天天天爽| 国产小视频在线看 | 国内精品久久久久久 | 国产精久久久 | 中文字幕av有码 | 新版资源中文在线观看 | 97在线视频观看 | 免费99精品国产自在在线 | 天天干中文字幕 | 国产做a爱一级久久 |