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

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

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

编程问答

100行代码实现了多线程,批量写入,文件分块的日志方法

發(fā)布時(shí)間:2023/12/15 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 100行代码实现了多线程,批量写入,文件分块的日志方法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一,您選擇用什么樣的日志組件

日志組件,不得不提大名鼎鼎的Log4Net。比較常用的還有 Enterprise Library Logging,ServiceStack Logging。當(dāng)然您還可以補(bǔ)充,我就只用過(guò)這幾款。

上邊提到的3款日志組件,都要在.config里加代碼,特別是Log4Net,還要把SQL寫(xiě)在配置里。我就是僅僅只寫(xiě)個(gè)日志,還要配置這么多信息,讓人略有不爽。

所以在很長(zhǎng)一段時(shí)間里,我用下邊這個(gè)方法寫(xiě)日志:

private static void WriteText(string logPath, string logContent){try{if (!File.Exists(logPath)){File.CreateText(logPath).Close();}StreamWriter sw = File.AppendText(logPath);sw.Write(logContent);sw.Close();}catch (Exception ex){}finally{}} View Code

這個(gè)方法足夠的簡(jiǎn)單,核心代碼就只有那么5,6行,還包含容錯(cuò)機(jī)制。我就喜歡用這種簡(jiǎn)單的代碼來(lái)處理簡(jiǎn)單的事。

二,多線(xiàn)程下引爆了問(wèn)題

在多線(xiàn)程的情況下,比如100個(gè)線(xiàn)程同時(shí)需要寫(xiě)日志,上邊提到的這個(gè)方法就力不從心了。

一個(gè)線(xiàn)程訪(fǎng)問(wèn)日志資源,另一個(gè)線(xiàn)程再去訪(fǎng)問(wèn)的時(shí)候,就會(huì)出現(xiàn)異常。

方法一:

public static Object _processLock = new Object();private void Button_Click_1(object sender, RoutedEventArgs e){lock (_processLock){}}

方法二:

public static Object _processLock = new Object();private void Button_Click_1(object sender, RoutedEventArgs e){Monitor.Enter(_processLock);Monitor.Exit(_processLock);}

這樣,你不得不承認(rèn),我已經(jīng)解決了多線(xiàn)程的問(wèn)題。

但是有瓶頸,這些需要寫(xiě)日志的線(xiàn)程,必須要等前一個(gè)釋放了鎖資源,后一個(gè)線(xiàn)程才能訪(fǎng)問(wèn)的情況。

三,重新設(shè)計(jì)日志組件

先看圖,再說(shuō)一下我的思路:

1,不管有多少線(xiàn)程同時(shí)需要寫(xiě)日志,我都用一個(gè)臨時(shí)隊(duì)列來(lái)存放這些日志信息。

2,再啟用一個(gè)Task任務(wù)把隊(duì)列的日志批量存放到.log文件里。

3,附加一個(gè)小功能,每個(gè)日志存儲(chǔ)的大小限制,當(dāng)日志太大了,查看打開(kāi)的時(shí)候比較慢。

四,具體的代碼實(shí)現(xiàn)

1,在多線(xiàn)程的情況下,我們首先把日志壓到Queue隊(duì)列里

static ConcurrentQueue<Tuple<string, string>> logQueue = new ConcurrentQueue<Tuple<string, string>>();

在這兒,我為什么選用 ConcurrentQueue??而不是? Queue? 。因?yàn)镃oncurrentQueue??表示線(xiàn)程安全的先進(jìn)先出 (FIFO) 集合。

當(dāng)然你一定要用Queue也是可以的,但是要自己去實(shí)現(xiàn)鎖機(jī)制,何必自找麻煩呢?

2,把日志隊(duì)列里的數(shù)據(jù),批量持久化到.log文件里

這個(gè)問(wèn)題,讓我很頭大。我最開(kāi)始的方法是:

持久化日志方法一:

a,申明一個(gè)Task任務(wù),當(dāng)我Task任務(wù)沒(méi)有實(shí)現(xiàn)化時(shí),先實(shí)例化,然后再進(jìn)行持久化日志寫(xiě)入。

b,當(dāng)我的Task任務(wù),已經(jīng)實(shí)例化了,并且是處于 IsCompleted 狀態(tài),我重新實(shí)例化Task,再進(jìn)行持久化日志的寫(xiě)入。

static Task writeTask = default(Task); public static void WriteLog(String customDirectory, String preFile, String infoData){string logPath = GetLogPath(customDirectory, preFile); string logContent = String.Concat(DateTime.Now, " ", infoData); logQueue.Enqueue(new Tuple<string, string>(logPath, logContent)); if (writeTask == null) { writeTask = new Task((object obj) => { //pause.WaitOne(1000, true); LogRepository(); } , null , TaskCreationOptions.LongRunning); writeTask.Start(); } if (writeTask.IsCompleted) { writeTask = new Task((object obj) => { //pause.WaitOne(1000, true); LogRepository(); } , null , TaskCreationOptions.LongRunning); writeTask.Start(); } } View Code

異常信息:

理論是那么的美好,但是現(xiàn)實(shí)是那么殘酷,當(dāng)我跑單元測(cè)試的時(shí)候,一段時(shí)間后總是拋出如下錯(cuò)誤。如果是有那位朋友知道其原因,把這個(gè)問(wèn)題解決就完美了。

但是我不能因?yàn)檫@一個(gè)異常,導(dǎo)致我這個(gè)組件寫(xiě)不下去吧!活人不能被一泡尿給憋死。

追加:完整代碼如下:

public class IOExtention{static ConcurrentQueue<Tuple<string, string>> logQueue = new ConcurrentQueue<Tuple<string, string>>();static volatile Task writeTask = default(Task);static IOExtention(){}public static void WriteLog(String preFile, String infoData){WriteLog(string.Empty, preFile, infoData);}static AutoResetEvent pause = new AutoResetEvent(false);public static void WriteLog(String customDirectory, String preFile, String infoData){string logPath = GetLogPath(customDirectory, preFile);string logContent = String.Concat(DateTime.Now, " ", infoData);logQueue.Enqueue(new Tuple<string, string>(logPath, logContent));if (writeTask == null){writeTask = new Task((object obj) =>{//pause.WaitOne(1000, true); LogRepository();}, null, TaskCreationOptions.LongRunning);writeTask.Start();}if (writeTask.IsCompleted){writeTask = new Task((object obj) =>{//pause.WaitOne(1000, true); LogRepository();}, null, TaskCreationOptions.LongRunning);writeTask.Start();}}public static void LogRepository(){List<string[]> temp = new List<string[]>();foreach (var logItem in logQueue){string logPath = logItem.Item1;string logMergeContent = String.Concat(logItem.Item2, Environment.NewLine, "-----------------------------------------------------------", Environment.NewLine);string[] logArr = temp.FirstOrDefault(d => d[0].Equals(logPath));if (logArr != null){logArr[1] = string.Concat(logArr[1], logMergeContent);}else{logArr = new string[] { logPath, logMergeContent };temp.Add(logArr);}Tuple<string, string> val = default(Tuple<string, string>);logQueue.TryDequeue(out val);}foreach (string[] item in temp){WriteText(item[0], item[1]);}}private static string GetLogPath(String customDirectory, String preFile){string newFilePath = string.Empty;String logDir = string.IsNullOrEmpty(customDirectory) ? Path.Combine(Environment.CurrentDirectory, "logs") : customDirectory;if (!Directory.Exists(logDir)){Directory.CreateDirectory(logDir);}string extension = ".log";string fileNameNotExt = String.Concat(preFile, DateTime.Now.ToString("yyyyMMdd"));String fileName = String.Concat(fileNameNotExt, extension);string fileNamePattern = string.Concat(fileNameNotExt, "(*)", extension);List<string> filePaths = Directory.GetFiles(logDir, fileNamePattern, SearchOption.TopDirectoryOnly).ToList();if (filePaths.Count > 0){int fileMaxLen = filePaths.Max(d => d.Length);string lastFilePath = filePaths.Where(d => d.Length == fileMaxLen).OrderByDescending(d => d).FirstOrDefault();if (new FileInfo(lastFilePath).Length > 1 * 1024 * 1024){string no = new Regex(@"(?is)(?<=\()(.*)(?=\))").Match(Path.GetFileName(lastFilePath)).Value;int tempno = 0;bool parse = int.TryParse(no, out tempno);string formatno = String.Format("({0})", parse ? (tempno + 1) : tempno);string newFileName = String.Concat(fileNameNotExt, formatno, extension);newFilePath = Path.Combine(logDir, newFileName);}else{newFilePath = lastFilePath;}}else{string newFileName = String.Concat(fileNameNotExt, String.Format("({0})", 0), extension);newFilePath = Path.Combine(logDir, newFileName);}return newFilePath;}private static void WriteText(string logPath, string logContent){try{if (!File.Exists(logPath)){File.CreateText(logPath).Close();}StreamWriter sw = File.AppendText(logPath);sw.Write(logContent);sw.Close();}catch (Exception ex){}finally{}}} View Code

?

持久化日志方法二:

我采用了另外一種方法,在Task任務(wù)里我用信號(hào)量的方式來(lái)解決了些問(wèn)題,完整代碼如下:

static AutoResetEvent pause = new AutoResetEvent(false);

信號(hào)量法:

public class IOExtention{static ConcurrentQueue<Tuple<string, string>> logQueue = new ConcurrentQueue<Tuple<string, string>>();static Task writeTask = default(Task);static IOExtention(){writeTask = new Task((object obj) =>{while (true){pause.WaitOne(1000, true);List<string[]> temp = new List<string[]>();foreach (var logItem in logQueue){string logPath = logItem.Item1;string logMergeContent = String.Concat(logItem.Item2, Environment.NewLine, "-----------------------------------------------------------", Environment.NewLine);string[] logArr = temp.FirstOrDefault(d => d[0].Equals(logPath));if (logArr != null){logArr[1] = string.Concat(logArr[1], logMergeContent);}else{logArr = new string[] { logPath, logMergeContent };temp.Add(logArr);}Tuple<string, string> val = default(Tuple<string, string>);logQueue.TryDequeue(out val);}foreach (string[] item in temp){WriteText(item[0], item[1]);}}}, null, TaskCreationOptions.LongRunning);writeTask.Start();}public static void WriteLog(String preFile, String infoData){WriteLog(string.Empty, preFile, infoData);}static AutoResetEvent pause = new AutoResetEvent(false);public static void WriteLog(String customDirectory, String preFile, String infoData){string logPath = GetLogPath(customDirectory, preFile);string logContent = String.Concat(DateTime.Now, " ", infoData);logQueue.Enqueue(new Tuple<string, string>(logPath, logContent));}private static string GetLogPath(String customDirectory, String preFile){string newFilePath = string.Empty;String logDir = string.IsNullOrEmpty(customDirectory) ? Path.Combine(Environment.CurrentDirectory, "logs") : customDirectory;if (!Directory.Exists(logDir)){Directory.CreateDirectory(logDir);}string extension = ".log";string fileNameNotExt = String.Concat(preFile, DateTime.Now.ToString("yyyyMMdd"));String fileName = String.Concat(fileNameNotExt, extension);string fileNamePattern = string.Concat(fileNameNotExt, "(*)", extension);List<string> filePaths = Directory.GetFiles(logDir, fileNamePattern, SearchOption.TopDirectoryOnly).ToList();if (filePaths.Count > 0){int fileMaxLen = filePaths.Max(d => d.Length);string lastFilePath = filePaths.Where(d => d.Length == fileMaxLen).OrderByDescending(d => d).FirstOrDefault();if (new FileInfo(lastFilePath).Length > 1 * 1024 * 1024){string no = new Regex(@"(?is)(?<=\()(.*)(?=\))").Match(Path.GetFileName(lastFilePath)).Value;int tempno = 0;bool parse = int.TryParse(no, out tempno);string formatno = String.Format("({0})", parse ? (tempno + 1) : tempno);string newFileName = String.Concat(fileNameNotExt, formatno, extension);newFilePath = Path.Combine(logDir, newFileName);}else{newFilePath = lastFilePath;}}else{string newFileName = String.Concat(fileNameNotExt, String.Format("({0})", 0), extension);newFilePath = Path.Combine(logDir, newFileName);}return newFilePath;}private static void WriteText(string logPath, string logContent){try{if (!File.Exists(logPath)){File.CreateText(logPath).Close();}StreamWriter sw = File.AppendText(logPath);sw.Write(logContent);sw.Close();}catch (Exception ex){}finally{}}} View Code

持久化日志方法三:

如果你感覺(jué)寫(xiě)一個(gè)日志類(lèi)還用什么信號(hào)量這些技術(shù),太復(fù)雜了,那也可以用最簡(jiǎn)單的方式,定時(shí)器來(lái)解決。

有同學(xué)一聽(tīng)定時(shí)器,就默默的笑了,但是這兒的坑也很深,首先了解一下這幾個(gè)定時(shí)器的使用場(chǎng)合,再用不遲!

System.Windows.Threading.DispatcherTimer

System.Windows.Forms.Timer

System.Timers.Timer

System.Threading.Timer

定時(shí)器法:

public class IOExtention{static ConcurrentQueue<Tuple<string, string>> logQueue = new ConcurrentQueue<Tuple<string, string>>();static System.Timers.Timer logTimers = new System.Timers.Timer();static IOExtention(){logTimers.Interval = 1000;logTimers.Elapsed += logTimers_Elapsed;logTimers.AutoReset = true;logTimers.Enabled = true;}public static void WriteLog(String preFile, String infoData){WriteLog(string.Empty, preFile, infoData);}public static void WriteLog(String customDirectory, String preFile, String infoData){string logPath = GetLogPath(customDirectory, preFile);string logContent = String.Concat(DateTime.Now, " ", infoData);logQueue.Enqueue(new Tuple<string, string>(logPath, logContent));}private static string GetLogPath(String customDirectory, String preFile){string newFilePath = string.Empty;String logDir = string.IsNullOrEmpty(customDirectory) ? Path.Combine(Environment.CurrentDirectory, "logs") : customDirectory;if (!Directory.Exists(logDir)){Directory.CreateDirectory(logDir);}string extension = ".log";string fileNameNotExt = String.Concat(preFile, DateTime.Now.ToString("yyyyMMdd"));String fileName = String.Concat(fileNameNotExt, extension);string fileNamePattern = string.Concat(fileNameNotExt, "(*)", extension);List<string> filePaths = Directory.GetFiles(logDir, fileNamePattern, SearchOption.TopDirectoryOnly).ToList();if (filePaths.Count > 0){int fileMaxLen = filePaths.Max(d => d.Length);string lastFilePath = filePaths.Where(d => d.Length == fileMaxLen).OrderByDescending(d => d).FirstOrDefault();if (new FileInfo(lastFilePath).Length > 1 * 1024 * 1024){string no = new Regex(@"(?is)(?<=\()(.*)(?=\))").Match(Path.GetFileName(lastFilePath)).Value;int tempno = 0;bool parse = int.TryParse(no, out tempno);string formatno = String.Format("({0})", parse ? (tempno + 1) : tempno);string newFileName = String.Concat(fileNameNotExt, formatno, extension);newFilePath = Path.Combine(logDir, newFileName);}else{newFilePath = lastFilePath;}}else{string newFileName = String.Concat(fileNameNotExt, String.Format("({0})", 0), extension);newFilePath = Path.Combine(logDir, newFileName);}return newFilePath;}static void logTimers_Elapsed(object sender, System.Timers.ElapsedEventArgs e){System.Timers.Timer logTimers = (System.Timers.Timer)sender;logTimers.Enabled = false;List<string[]> temp = new List<string[]>();foreach (var logItem in logQueue){string logPath = logItem.Item1;string logMergeContent = String.Concat(logItem.Item2, Environment.NewLine, "-----------------------------------------------------------", Environment.NewLine);string[] logArr = temp.FirstOrDefault(d => d[0].Equals(logPath));if (logArr != null){logArr[1] = string.Concat(logArr[1], logMergeContent);}else{logArr = new string[] { logPath, logMergeContent };temp.Add(logArr);}Tuple<string, string> val = default(Tuple<string, string>);logQueue.TryDequeue(out val);}foreach (string[] item in temp){WriteText(item[0], item[1]);}logTimers.Enabled = true;}private static void WriteText(string logPath, string logContent){try{if (!File.Exists(logPath)){File.CreateText(logPath).Close();}StreamWriter sw = File.AppendText(logPath);sw.Write(logContent);sw.Close();}catch (Exception ex){}finally{}}} View Code

五,結(jié)語(yǔ)

重新設(shè)計(jì)的日志組件,思路還是非常清晰的。只是在持久化日志時(shí)遇上了問(wèn)題了。

持久化日志方法一,其實(shí)是很完美的解決方法,但是在高并發(fā)的時(shí)候,總是拋出異常,找不出原因。

持久化日志方法二,是我目前采用的方法,能夠有效的解決問(wèn)題。

持久化日志方法三,采用定時(shí)器解決,也是可行的。只是代碼看起來(lái)很別扭。

歡迎大家熱烈討論,看有沒(méi)有更好的解決方案。

?

阿里云客戶(hù)端的實(shí)現(xiàn)(支持文件分塊,斷點(diǎn)續(xù)傳,進(jìn)度,速度,倒計(jì)時(shí)顯示)

淘寶刷單軟件(刷單工具)程序?qū)崿F(xiàn)

?

信號(hào)量改進(jìn)版:

using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks;namespace LogTest {public class IOExtention{static ConcurrentQueue<Tuple<string, string>> logQueue = new ConcurrentQueue<Tuple<string, string>>();static Task writeTask = default(Task);static ManualResetEvent pause = new ManualResetEvent(false);//Mutex mmm = new Mutex();static IOExtention(){writeTask = new Task((object obj) =>{while (true){pause.WaitOne();pause.Reset();List<string[]> temp = new List<string[]>();foreach (var logItem in logQueue){string logPath = logItem.Item1;string logMergeContent = String.Concat(logItem.Item2, Environment.NewLine, "-----------------------------------------------------------", Environment.NewLine);string[] logArr = temp.FirstOrDefault(d => d[0].Equals(logPath));if (logArr != null){logArr[1] = string.Concat(logArr[1], logMergeContent);}else{logArr = new string[] { logPath, logMergeContent };temp.Add(logArr);}Tuple<string, string> val = default(Tuple<string, string>);logQueue.TryDequeue(out val);}foreach (string[] item in temp){WriteText(item[0], item[1]);}}}, null, TaskCreationOptions.LongRunning);writeTask.Start();}public static void WriteLog(String preFile, String infoData){WriteLog(string.Empty, preFile, infoData);}public static void WriteLog(String customDirectory, String preFile, String infoData){string logPath = GetLogPath(customDirectory, preFile);string logContent = String.Concat(DateTime.Now, " ", infoData);logQueue.Enqueue(new Tuple<string, string>(logPath, logContent));pause.Set();}private static string GetLogPath(String customDirectory, String preFile){string newFilePath = string.Empty;String logDir = string.IsNullOrEmpty(customDirectory) ? Path.Combine(Environment.CurrentDirectory, "logs") : customDirectory;if (!Directory.Exists(logDir)){Directory.CreateDirectory(logDir);}string extension = ".log";string fileNameNotExt = String.Concat(preFile, DateTime.Now.ToString("yyyyMMdd"));String fileName = String.Concat(fileNameNotExt, extension);string fileNamePattern = string.Concat(fileNameNotExt, "(*)", extension);List<string> filePaths = Directory.GetFiles(logDir, fileNamePattern, SearchOption.TopDirectoryOnly).ToList();if (filePaths.Count > 0){int fileMaxLen = filePaths.Max(d => d.Length);string lastFilePath = filePaths.Where(d => d.Length == fileMaxLen).OrderByDescending(d => d).FirstOrDefault();if (new FileInfo(lastFilePath).Length > 1 * 1024 * 1024 * 1024){string no = new Regex(@"(?is)(?<=\()(.*)(?=\))").Match(Path.GetFileName(lastFilePath)).Value;int tempno = 0;bool parse = int.TryParse(no, out tempno);string formatno = String.Format("({0})", parse ? (tempno + 1) : tempno);string newFileName = String.Concat(fileNameNotExt, formatno, extension);newFilePath = Path.Combine(logDir, newFileName);}else{newFilePath = lastFilePath;}}else{string newFileName = String.Concat(fileNameNotExt, String.Format("({0})", 0), extension);newFilePath = Path.Combine(logDir, newFileName);}return newFilePath;}private static void WriteText(string logPath, string logContent){try{if (!File.Exists(logPath)){File.CreateText(logPath).Close();}StreamWriter sw = File.AppendText(logPath);sw.Write(logContent);sw.Close();}catch (Exception ex){}finally{}}} } View Code

?

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的100行代码实现了多线程,批量写入,文件分块的日志方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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

天天操天天干天天 | 在线观看你懂的网址 | 色狠狠婷婷 | 激情综合国产 | 国产成人91 | 有没有在线观看av | 国产一区二区三区四区在线 | 波多野结衣小视频 | 日本动漫做毛片一区二区 | 国产成人黄色 | 黄色软件视频网站 | 亚洲视频第一页 | 久久国产a | 91在线网站| 国产精品久久久久久久妇 | 色综合激情网 | 好看av在线 | 91秒拍国产福利一区 | 国产成人久 | 午夜视频在线观看欧美 | 亚洲欧美少妇 | 久艹视频在线观看 | 久久久国产一区二区三区四区小说 | 99亚洲精品| 免费h在线观看 | 国产热re99久久6国产精品 | 亚洲欧美国产视频 | 一级黄色在线免费观看 | 国产精品麻豆一区二区三区 | 热久精品| av中文字幕电影 | 免费av片在线 | 亚洲成av人影片在线观看 | 国产精品爽爽爽 | 亚洲国产中文字幕在线观看 | 国产精品理论片在线观看 | 欧美美女视频在线观看 | 99久久久成人国产精品 | 午夜视频99 | 久久影院中文字幕 | 久久公开免费视频 | 亚洲天堂精品视频 | 国际精品久久 | 九九热在线精品视频 | 国产精品福利无圣光在线一区 | 欧美xxxx性xxxxx高清 | 韩日电影在线 | 亚洲精品在线一区二区 | 午夜资源站| 久久久久99精品成人片三人毛片 | 日韩在线观看一区 | 日韩免费一区二区在线观看 | 五月天色站 | 国产丝袜一区二区三区 | 亚洲精品a区 | 欧美色图88 | 国产在线高清视频 | 亚洲免费在线观看视频 | 久久国产精品免费看 | 欧美黄色特级片 | 国产高清一| 国产男女无遮挡猛进猛出在线观看 | 99免费在线视频观看 | 久久香蕉电影网 | 综合久久精品 | 99精品国产一区二区三区麻豆 | 国产999精品久久久影片官网 | 久久久久久蜜av免费网站 | 91在线观看欧美日韩 | 波多野结衣视频一区二区 | 日韩动漫免费观看高清完整版在线观看 | 麻豆精品视频在线 | 国产91影院 | 欧美午夜精品久久久久久浪潮 | 91一区在线观看 | 可以免费看av | 亚洲国产日韩一区 | 亚洲男人天堂a | 激情五月视频 | 国产福利91精品 | 久久精品一区二区三区四区 | 深夜免费小视频 | 日本婷婷色 | 五月天色站 | 国产午夜精品免费一区二区三区视频 | 91视频免费播放 | 色网免费观看 | 91亚洲精品国偷拍自产在线观看 | 精品国产福利在线 | 黄色国产区 | 欧美一区免费观看 | 成人中文字幕在线观看 | 久久精久久精 | 久久手机免费视频 | 久久国内视频 | 天天干人人 | 日韩在线观看视频中文字幕 | 97成人免费视频 | 99久久99久久精品国产片 | 欧美最新大片在线看 | 久久公开免费视频 | 国产精品igao视频网网址 | 精品99免费视频 | 国产欧美综合在线观看 | 在线免费视频你懂的 | 国产在线999 | 国产精品自产拍在线观看桃花 | 2022国产精品视频 | 午夜精品视频一区二区三区在线看 | 99在线观看视频网站 | 96视频免费在线观看 | 亚洲精品激情 | 国产一二三四在线观看视频 | 欧美人交a欧美精品 | 久青草影院 | 久精品视频在线观看 | 中国一级片在线 | 中文字幕在线免费播放 | 久久久久久国产精品免费 | 久久精品国产免费看久久精品 | 日韩亚洲国产精品 | 久久黄色小说 | 中文字幕高清av | 色婷婷亚洲婷婷 | 久久激情视频网 | 综合激情 | 在线观看深夜视频 | 狠狠狠狠狠狠狠狠 | 久久成人精品电影 | 日韩免费一级a毛片在线播放一级 | 人人插超碰 | 成人免费看电影 | 国产69精品久久久久99 | 亚洲高清视频在线 | 中文亚洲欧美日韩 | 99久久精品费精品 | a天堂最新版中文在线地址 久久99久久精品国产 | 探花视频网站 | 欧美亚洲另类在线视频 | 免费情缘 | 超碰夜夜 | av大全在线播放 | 五月激情亚洲 | 五月婷婷.com | 97在线观看视频国产 | 国产高清在线a视频大全 | 久久久精品国产一区二区三区 | 99精品观看 | 国产美女在线精品免费观看 | 欧美久久99 | 午夜资源站 | 国产亚洲精品久久久久久久久久 | 一区二精品 | 色中色亚洲 | 免费看一级特黄a大片 | 国产精品网址在线观看 | 免费观看的黄色片 | 玖玖玖影院 | 亚洲综合欧美日韩狠狠色 | 黄色免费视频在线观看 | 国产高清中文字幕 | 人人看看人人 | 最新av网址在线观看 | 国产视频综合在线 | 日韩av午夜 | 久久99九九99精品 | 午夜视频播放 | 人人干人人超 | 狠色狠色综合久久 | 探花视频在线版播放免费观看 | 日日射av| 成年人黄色免费视频 | 国产一区二区精品久久 | 91成人精品国产刺激国语对白 | 一区二区中文字幕在线 | 欧美日韩三级 | 国产精品久久久久四虎 | 久草成人在线 | 蜜桃视频成人在线观看 | 国产h在线播放 | 日韩午夜视频在线观看 | 久久久久久欧美二区电影网 | 国产小视频在线看 | 国产精品久久久久久久久久ktv | 久久精品国产亚洲aⅴ | 不卡日韩av| 久久不见久久见免费影院 | 最近日本韩国中文字幕 | 激情婷婷av | 日韩伦理一区二区三区av在线 | 日本成人免费在线观看 | 91久久久久久久一区二区 | 中文字幕久久精品亚洲乱码 | 99亚洲精品 | www色,com| 一区二区三区电影 | 一区二区三区在线视频观看58 | 毛片www| 欧美巨大| 午夜精品一区二区国产 | 国产精品自产拍在线观看桃花 | 操操操com | 天天躁天天狠天天透 | 五月婷婷一区 | 国产九色视频在线观看 | 日批网站免费观看 | 日韩免费在线看 | 色综合久久久久综合 | 成人av一区二区兰花在线播放 | 粉嫩高清一区二区三区 | 国产色视频网站2 | 色的网站在线观看 | 欧美精品你懂的 | 五月综合色婷婷 | 一区二精品 | 久久久麻豆精品一区二区 | 亚洲视频在线观看免费 | 日韩欧美一区二区三区黑寡妇 | 黄色精品国产 | 久久亚洲二区 | 麻豆你懂的 | 天天操天天舔天天爽 | 韩国三级一区 | 欧美亚洲另类在线视频 | 香蕉日日| 丁香花在线视频观看免费 | 欧美最新另类人妖 | 久久国产精品色av免费看 | 日韩二区三区在线 | 久久国产午夜精品理论片最新版本 | 91tv国产成人福利 | 久久久久久久久免费 | 超碰在线人人草 | 日韩免费电影一区二区 | 色久五月 | 在线播放av网址 | 婷婷丁香在线 | 国产亚洲精品成人 | 国产成人精品不卡 | 国产视频中文字幕 | 久久久男人的天堂 | 在线你懂的视频 | 中文超碰字幕 | 久久久影院 | 91重口视频 | 综合网成人 | 999国内精品永久免费视频 | 久久国产精品影片 | 香蕉影院在线播放 | 久久免费电影 | 欧美日韩亚洲在线 | www.五月婷婷 | 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 国产香蕉97碰碰碰视频在线观看 | 国产精品欧美久久久久天天影视 | 在线观看中文 | 国产传媒一区在线 | 亚洲黄色免费 | 亚洲成熟女人毛片在线 | 色综合久久88色综合天天人守婷 | 欧美日韩国产一区二区三区在线观看 | 特级毛片网| 亚洲女在线 | 片黄色毛片黄色毛片 | 免费精品久久久 | 精品在线观看一区二区 | 在线观看av不卡 | 免费av免费观看 | 精品免费观看 | 日韩av成人 | 国产精品久久久久永久免费 | 日韩网站在线免费观看 | 在线亚洲高清视频 | 国产精品视频在线观看 | 久青草视频在线观看 | 99久久精品免费看国产麻豆 | av久久久久久 | 在线日本看片免费人成视久网 | 成人影片在线免费观看 | 五月天久久综合网 | av一级久久 | 久久精品成人 | 黄色精品网站 | 日本精品一区二区三区在线播放视频 | www91在线观看 | 天天射天天干天天爽 | 久久影视网| 97精品超碰一区二区三区 | 中文字幕av最新 | 免费在线看v | 天天色天天艹 | 美女黄频视频大全 | 国产一区二区手机在线观看 | www.夜夜操.com | 亚洲精品一区二区在线观看 | 五月婷婷天堂 | 国产一区二区三精品久久久无广告 | 天天草夜夜 | 毛片一区二区 | 青青河边草免费直播 | 亚洲国产美女久久久久 | 在线观看完整版免费 | 欧美视频xxx| 在线91网| 日韩高清不卡一区二区三区 | 久青草国产在线 | 天堂av免费观看 | 五月婷婷综 | 激情综合网五月 | 天天综合人人 | 精品一区二区精品 | www.天天草 | 一区二区观看 | 成人国产精品 | 精品综合久久 | 波多野结衣视频网址 | 99久久精品国产免费看不卡 | 96精品高清视频在线观看软件特色 | 欧洲精品久久久久毛片完整版 | 热九九精品 | 六月丁香激情综合 | 国产精品久久久久久久久岛 | 国产精品网站一区二区三区 | 久久久国产精品人人片99精片欧美一 | 日韩精品一二三 | 成人欧美亚洲 | 国产精品视频地址 | 91九色精品女同系列 | 国产一区不卡在线 | 国产在线视频导航 | 久久精品国产免费 | 久久免费视频在线观看30 | 香蕉视频久久 | 色噜噜在线观看 | 久久精品牌麻豆国产大山 | 日韩久久一区 | 婷婷久久亚洲 | 日本视频高清 | 综合av在线 | 日本公妇在线观看 | 999一区二区三区 | 中国黄色一级大片 | 国产精品嫩草在线 | 日韩一区二区三区观看 | 91片黄在线观 | 西西444www高清大胆 | 免费在线看成人av | 久久av免费 | 日韩高清一区 | 国产精品福利在线播放 | 亚洲久草网| 日韩素人在线观看 | 国产成人精品在线观看 | 麻豆91精品91久久久 | 在线视频 一区二区 | 日韩网站免费观看 | 一级国产视频 | 国产精品久久久久久久久久免费 | 激情综合中文娱乐网 | 一级免费黄视频 | 五月婷久 | 日韩成人精品 | 中文字幕在线看片 | 欧美,日韩 | 在线v片免费观看视频 | 99tvdz@gmail.com| 日韩另类在线 | 天天鲁一鲁摸一摸爽一爽 | 亚洲精品中文字幕在线 | 免费手机黄色网址 | av在线电影免费观看 | 制服丝袜天堂 | 999国内精品永久免费视频 | 一本色道久久综合亚洲二区三区 | 欧美aaa视频 | 激情视频91| 久久精品免费电影 | 日韩理论片 | 色婷婷久久 | 欧美特一级片 | 成人黄色毛片视频 | 免费看三级黄色片 | 黄网站色视频免费观看 | 久久96国产精品久久99漫画 | 久久人人97超碰国产公开结果 | 爱爱av在线| 免费在线国产精品 | 国产福利在线不卡 | 国产一级片播放 | 日韩免费网站 | 日本在线精品视频 | 国产精品国产三级国产aⅴ入口 | 日韩免费b | 久久国产精品第一页 | 中文免费在线观看 | 免费国产亚洲视频 | 国产精品成人久久久 | 韩日电影在线观看 | 中文字幕一区二区三区在线视频 | 亚洲精品啊啊啊 | 香蕉视频在线免费 | 日韩电影中文字幕 | 国内三级在线观看 | www.亚洲黄| 亚洲国产三级在线观看 | 欧美在线不卡一区 | 国产视频美女 | 国内视频在线 | 免费看91的网站 | 精品免费99久久 | 亚洲精品女人久久久 | 国产手机视频在线观看 | 亚洲黄色在线观看 | 99视频免费在线观看 | 欧美日韩精品在线观看视频 | 中文字幕亚洲不卡 | 国产中文在线视频 | 国产成人精品亚洲 | 国产精品入口麻豆www | 国产精品久久久久久久久久妇女 | 日韩欧美一区二区三区视频 | av中文字幕在线看 | 久久久久久久久久久久久久电影 | 在线亚洲天堂网 | av免费线看 | 欧美大片在线观看一区 | 欧美精品xxx | 久久综合日 | 亚洲婷婷网 | 91欧美日韩国产 | 在线免费观看视频一区 | 久久人人艹 | 欧美日韩免费一区二区 | 免费av网址在线观看 | 伊人手机在线 | 中国一级特黄毛片大片久久 | 欧美一区二区三区在线视频观看 | 日韩丝袜| 国产精品久久久久av | 亚洲片在线 | 成人一区二区在线观看 | 精品自拍网 | 国产精品久久久久999 | 日韩在线观看视频免费 | 久久久激情视频 | www.天天操.com | 日韩成人欧美 | 欧美一级裸体视频 | 在线观看视频h | 国产精久久久久久妇女av | bbw av| 最近日韩中文字幕中文 | 999日韩| 久久久人人人 | 久久精品视频网址 | 国产亚洲一区二区在线观看 | 激情视频一区 | 日韩欧美在线中文字幕 | 黄色一级影院 | 精品久久久久久国产91 | 69精品久久久 | 麻豆91精品视频 | 中文区中文字幕免费看 | 九九亚洲视频 | 国产一区二区在线精品 | 国产 一区二区三区 在线 | 视频一区二区国产 | av中文字幕在线播放 | 9幺看片 | 国产精品毛片久久 | 99久久精品免费看国产一区二区三区 | 韩日av一区二区 | 五月婷网 | 欧美一区二区三区在线播放 | 日韩欧美精品一区二区三区经典 | 玖玖视频在线 | 久久人人爽人人爽 | 最新国产在线 | 亚洲成人免费在线观看 | 黄色特级毛片 | 亚洲区色 | 全黄网站| 91精品国产一区二区在线观看 | 日韩视频免费观看高清完整版在线 | 99精品偷拍视频一区二区三区 | 成年人视频免费在线播放 | 久久精品视频在线免费观看 | 在线免费观看av网站 | 97超在线 | 91av在线免费视频 | 西西www4444大胆视频 | 中文字幕免费观看视频 | 丁香色天天 | 免费在线观看av片 | 日韩在线观看视频网站 | 最新国产精品拍自在线播放 | 久久人人爽人人片av | 国产又粗又猛又黄又爽的视频 | 日本在线观看一区二区 | 亚洲精品一区二区三区在线观看 | 中文字幕亚洲精品日韩 | 日韩精品一区二区三区中文字幕 | 日韩视频在线观看视频 | av在线激情 | 国产午夜精品一区二区三区欧美 | 亚洲成人av电影在线 | 在线观看国产高清视频 | 成人久久免费视频 | 国产无套视频 | 免费在线观看av片 | 国产久草在线 | 亚洲精品ww | 日韩电影在线观看一区二区三区 | 日本精品在线看 | www.久久久.com | 主播av在线 | 久久成人免费视频 | 天天看天天干 | 超碰人人舔 | 国产午夜一区 | 久久久久综合视频 | 国产成人黄色av | 高清视频一区二区三区 | 黄网av在线| 欧美一区二区在线免费观看 | 日韩精品欧美一区 | 久久精品国产亚洲aⅴ | 六月丁香激情综合 | 国产成人一区二区三区 | 久艹在线免费观看 | 狠狠色香婷婷久久亚洲精品 | 久久久久久久久久久网站 | 久久久综合精品 | 1000部18岁以下禁看视频 | 亚洲天堂自拍视频 | 欧美一级特黄aaaaaa大片在线观看 | 狠狠操狠狠干天天操 | 欧美在线视频第一页 | a色视频| 伊人婷婷 | 久久这里精品视频 | 夜夜爽88888免费视频4848 | 国产精品免费人成网站 | 亚洲日本黄色 | 日本最新一区二区三区 | av三级在线播放 | 中文字幕高清有码 | 久久69精品久久久久久久电影好 | 中文字幕视频免费观看 | 丝袜美腿亚洲 | 四虎国产精品免费观看视频优播 | 欧美va天堂va视频va在线 | 久久男女视频 | 成片免费| 天堂av在线网 | 免费高清在线视频一区· | 国产一区欧美日韩 | 久久激情视频免费观看 | 黄色av电影免费观看 | 免费久久精品视频 | 国产一级电影网 | 国产尤物在线 | 天天插天天狠天天透 | 亚洲人在线7777777精品 | 在线激情av电影 | 亚洲精品久久久久中文字幕二区 | 国产免费又爽又刺激在线观看 | 狠狠网亚洲精品 | 日本久久精品视频 | 精品免费一区二区三区 | 91九色视频国产 | 九色91在线| 久久综合影院 | 最新国产精品拍自在线播放 | 欧美日韩精品在线一区二区 | 日本中文字幕高清 | 国产成人精品午夜在线播放 | 在线观看免费色 | 99热这里是精品 | 久草男人天堂 | 久久精品99视频 | 日本在线中文在线 | 久久视频二区 | 成 人 黄 色 视频 免费观看 | 色偷偷888欧美精品久久久 | 国产 在线观看 | a在线v | 国内视频1区| 国产欧美中文字幕 | 久草| 一区二区三区精品在线视频 | 国产精品资源在线观看 | 日韩免费一级a毛片在线播放一级 | 国产玖玖在线 | av短片在线 | 免费在线色 | 精品人人人人 | 国产手机在线 | 免费观看www小视频的软件 | 色综合久久88 | 色网站免费在线看 | 欧美日韩免费一区二区 | 99热精品久久| 久久专区| 亚洲一二区精品 | 欧美日韩一区二区在线观看 | 日韩中文字幕免费视频 | 国产精品美女999 | av7777777| 亚洲日本va午夜在线电影 | 日韩一二区在线观看 | 国产日韩精品欧美 | 国产一区成人在线 | 免费看精品久久片 | 久久y| 精品国产诱惑 | 亚洲国产婷婷 | 久久免费国产精品1 | 亚洲成年片| 97成人免费| 丁香av| a国产精品 | 日日夜夜天天久久 | 久久久久久网站 | 亚洲在线网址 | 亚洲 成人 一区 | 天天综合精品 | 午夜精品剧场 | 国产毛片久久 | 黄色av一级片 | 欧美日韩大片在线观看 | 日本久久中文 | 久久久久免费网 | 免费合欢视频成人app | 99亚洲国产 | 久久久成人精品 | 亚洲精品国产综合99久久夜夜嗨 | 中文字幕视频一区 | 久久无码av一区二区三区电影网 | 91男人影院 | 久久久久日本精品一区二区三区 | 国产一级免费在线 | 亚洲午夜精品一区 | 亚洲免费a| 超碰成人网 | 国产主播99 | 少妇激情久久 | 91视频在线免费观看 | 69国产成人综合久久精品欧美 | 99人久久精品视频最新地址 | 成人9ⅰ免费影视网站 | 亚洲精品欧美视频 | 欧美精品在线观看一区 | 黄色91在线| 日韩精品久久久免费观看夜色 | 波多野结衣一区二区三区中文字幕 | 国产亚洲精品中文字幕 | 国产精品不卡在线播放 | 91久久国产自产拍夜夜嗨 | 二区三区在线观看 | 探花视频免费在线观看 | 久久久久电影 | 伊人狠狠干| 久草精品视频 | 一区二区三区视频网站 | 日韩精品一区二区免费 | 韩国av在线播放 | 久久久高清免费视频 | 久99久精品 | 国产精品久久久久久久婷婷 | 操操综合 | 国产精品亚洲人在线观看 | 五月天婷亚洲天综合网鲁鲁鲁 | 日韩av网站在线播放 | 麻豆免费在线播放 | 一区二区三区高清不卡 | 欧美激情视频一区二区三区 | 亚洲精品午夜aaa久久久 | 一区二区三区 中文字幕 | 日韩欧美视频在线观看免费 | 色欧美视频 | 国产黄色片在线免费观看 | 精品亚洲视频在线 | 国产福利在线免费 | a一片一级 | 欧美乱大交 | 久久手机视频 | 久久久影院官网 | 狠狠色丁香婷婷综合橹88 | 中文字幕第一页在线播放 | 精品免费视频123区 午夜久久成人 | 福利视频导航网址 | 亚洲特级毛片 | 中国老女人日b | 婷婷色伊人 | 天天干天天碰 | 久热免费在线 | 久久激情小视频 | 国产精品美女久久久久久久久久久 | 亚洲天堂色婷婷 | 在线播放 日韩专区 | 国产视频日韩 | 五月激情久久久 | 8090yy亚洲精品久久 | 国内精品视频免费 | 黄色一级性片 | 久久精品99视频 | 国产精品久久久久久婷婷天堂 | 久久国产精品偷 | av一级免费 | 黄色片网站| 日韩性片| 久久免费一 | 色综合天天色 | 天天干天天操天天干 | 国产精品wwwwww | 国产亚洲精品成人 | 毛片网免费 | 欧美日韩亚洲精品在线 | 片网站 | 欧洲在线免费视频 | 91精品福利在线 | 69xx视频| 亚洲国产日韩在线 | 成人久久影院 | 亚洲精品xxxx | 日韩av三区 | 天天干天天摸天天操 | 国产午夜三级 | 亚洲精品456在线播放 | 91精品国产91久久久久 | 国产精品成久久久久三级 | 色中文字幕在线观看 | 日韩久久午夜一级啪啪 | 欧美一级专区免费大片 | 精品欧美一区二区三区久久久 | 国产在线观看不卡 | 欧美日韩视频免费看 | 欧美尹人 | 国产综合精品一区二区三区 | 久久精精品 | 国产精品成人aaaaa网站 | 日韩免费av片 | a午夜电影 | 日日操网 | 精品国产久 | 亚洲一区精品二人人爽久久 | av中文字幕免费在线观看 | 欧美日韩国产二区三区 | 国产免费叼嘿网站免费 | 国产午夜不卡 | 免费看黄色小说的网站 | 99热这里只有精品久久 | 久久久久国产精品免费免费搜索 | 国产精品毛片一区视频播不卡 | 日韩视频在线一区 | 国产中文在线观看 | 久久精品视频在线观看 | 午夜三级福利 | 日韩精品一区二区三区不卡 | 日韩av在线高清 | 亚洲午夜在线视频 | 91成人精品一区在线播放69 | 日韩69视频 | 国产成人一区二区三区久久精品 | 99视频精品 | 国产精品一区二区在线观看 | 日韩免费不卡av | 一区二区三区动漫 | www.香蕉视频在线观看 | 亚洲情感电影大片 | av在线永久免费观看 | 在线亚洲成人 | 久久久久免费网站 | 99re热精品视频| 国产人在线成免费视频 | 九九久久国产精品 | 欧美做受高潮1 | 免费黄色av | 亚洲经典精品 | 伊人狠狠 | 亚洲一区二区三区四区在线视频 | 中文字幕精品视频 | 国产成人一区二区三区电影 | 国产免费成人av | 国产亚洲成av片在线观看 | 中文字幕日韩伦理 | 免费视频三区 | 久草在线精品观看 | 婷婷在线视频观看 | 91影视成人| 天天操天天操天天操天天操天天操 | 天堂va在线观看 | 国产一区二区不卡在线 | 丁香婷婷电影 | 亚洲一级片在线看 | 激情xxxx | 国产视频二 | 欧美专区国产专区 | 久久久久久中文字幕 | 久久精品国产一区二区三 | 色吧av色av | 欧美性生交大片免网 | 开心综合网 | 午夜av片| 午夜精品福利一区二区三区蜜桃 | 国产96在线 | 一区二区三区在线电影 | 国产黄色精品 | 天天射天天干天天 | 国产一级黄色免费看 | 久久久久久福利 | 婷婷视频在线播放 | 久久综合桃花 | 免费看91的网站 | 免费福利在线播放 | 欧美做受高潮 | 国产专区欧美专区 | 夜夜天天干 | 欧美日韩一区二区在线观看 | 中文字幕 国产 一区 | 一区二区三区视频在线 | 日韩理论在线观看 | 99国产在线视频 | 毛片一级免费一级 | 国产精品12 | 久草在线观看视频免费 | 韩国av永久免费 | 久久久国产一区二区三区四区小说 | 女人高潮一级片 | 色婷婷免费视频 | av日韩在线网站 | 国产一区二区午夜 | 亚洲粉嫩av | 国产日韩欧美在线观看 | 久久久久影视 | 狠狠狠色丁香婷婷综合久久五月 | av在线专区| 国产一级大片在线观看 | 久久刺激视频 | 在线蜜桃视频 | 色综合激情网 | 五月天色综合 | 亚洲高清在线观看视频 | 五月激情天 | 国产 av 日韩 | 欧美日韩视频在线播放 | 亚洲人成网站精品片在线观看 | 日韩免费网址 | 免费看毛片在线 | 国产91欧美 | 天天爽天天碰狠狠添 | 久久亚洲欧美日韩精品专区 | 国产精品 美女 | 一区二区三区免费在线观看 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 人人盈棋牌 | 欧美日韩中文国产一区发布 | 欧美不卡视频在线 | 顶级bbw搡bbbb搡bbbb | 久久av电影 | 国产日韩精品视频 | 青春草免费在线视频 | 精品国产精品久久一区免费式 | 久久久午夜电影 | 亚洲va韩国va欧美va精四季 | 天天干夜夜操视频 | 国产福利一区二区三区视频 | 亚洲干视频在线观看 | 欧美激情第十页 | 91九色在线 | 伊人电影在线观看 | 国产精品久久久久久久久岛 | 视频一区视频二区在线观看 | 美女精品久久久 | 人人dvd| 在线a亚洲视频播放在线观看 | 99精品视频在线观看视频 | 国产欧美综合在线观看 | 久久亚洲影院 | 亚洲精品欧美成人 | 欧美99热| 国产亚洲婷婷免费 | 久久99亚洲热视 | 国产小视频国产精品 | 国产裸体视频bbbbb | 九热在线 | 免费日韩电影 | 热re99久久精品国产99热 | 欧美99热| 在线探花| 日韩网站在线看片你懂的 | 日韩大片在线播放 | 久久久国产99久久国产一 | 性色在线视频 | 日狠狠 | 国产精品久久视频 | 精品免费视频123区 午夜久久成人 | 国产少妇在线观看 | 国产精品久久久久久久久久久杏吧 | 亚洲视频资源在线 | 国产成人黄色片 | 欧美精品三级在线观看 | 色综合天天狠狠 | 九九日韩 | 亚洲精品在线国产 | 在线免费中文字幕 | 欧美日韩在线精品一区二区 | 欧美精品在线免费 | 亚洲国产资源 | 欧美一区二区三区在线视频观看 | 亚洲国产高清在线观看视频 | 精品久久久精品 | 久色婷婷 | 激情综合网在线观看 | 免费人成在线观看 | 天堂久久电影网 | 欧美日韩精品国产 | 在线观看的av网站 | 婷婷电影网| 91爱爱网址 | 色黄视频免费观看 | 国产精品午夜在线观看 | 亚洲国产精品一区二区久久hs | 亚洲人人爱 | 日本黄色黄网站 | 天天激情 | 午夜a区| 91看片网址 | 天天操天天舔天天干 | 日本午夜在线观看 | 久香蕉 | 欧美国产日韩一区 | 日韩乱码在线 | 国产成人久久77777精品 | 日韩在线不卡av | 久99久在线视频 | 99免费在线观看视频 | 在线成人一区二区 | 日韩经典一区二区三区 | 高清视频一区 | 狠狠色综合欧美激情 | 99色婷婷| 国产成人免费在线 | 97碰视频| av观看在线观看 | 日韩久久网站 | 丁香婷婷成人 | 成人黄色片免费 | 久久久久久久免费观看 | 高清不卡一区二区三区 | 成人免费观看a | 亚洲视频一区二区三区在线观看 | 狠狠色综合网站久久久久久久 | 成人av在线看 | 亚洲一级黄色av | 黄色资源在线 | 九草在线观看 | 久久久官网 | 久久人人爽爽人人爽人人片av | 日韩免费不卡视频 | 天堂中文在线播放 | 日本久久精 | 香蕉91视频 | 一区二区三区韩国免费中文网站 | 国产一区二区高清不卡 | 日本在线精品视频 | 中文字幕丰满人伦在线 | 色婷婷久久 | 在线91精品 | 丁香色综合| 色综合久久久久久久久五月 | 激情动态 | 一级片免费视频 | 欧美精品一区在线发布 | 极品久久久久久久 | 亚洲免费在线看 | 天天草天天色 | 婷婷久久一区二区三区 | 日本视频高清 | 欧美国产日韩激情 | 久插视频 | 亚洲国产精品久久久久 | 在线视频日韩欧美 | 午夜精品久久久99热福利 | 人人澡人人爱 | 亚洲综合最新在线 | 国产中文字幕在线视频 | 免费91在线| 激情偷乱人伦小说视频在线观看 | 日韩在线精品视频 | 国产精品av在线免费观看 | 亚洲精品99久久久久中文字幕 | 欧美日韩国产在线 | 亚洲h色精品 | 国产精品一区二区中文字幕 | 九九在线高清精品视频 | 亚洲最大av在线播放 |