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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

teamtalk的conn框架简介及netlib线程安全问题

發布時間:2024/1/17 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 teamtalk的conn框架简介及netlib线程安全问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

最近把teamtalk的conn_map改成了智能指針,但改了總要多方面試試有沒有問題,總不能編譯通過,能正常啟動就萬事大吉了。所以就寫了一個shell client客戶端來進行功能的測試。

tt的官方上一次發布版本里有一個test目錄,里面寫了一個簡易的測試客戶端。不過這個test根本不可用,因為不是代碼寫的有錯誤,就是功能缺失,所以我只好親自動手重做了。

在做的過程中總是發現client發起的connect偶爾會有連接不上,這個偶爾的概率非常低,但既然發生了,那肯定是有問題的。于是就查啊查啊。。。

test的測試客戶端相當于是一個命令行shell的客戶端,也就是沒有圖形界面,你的功能通過在終端上輸入命令來完成。目前我僅實現了注冊和登陸。未來打算把聊天等各種功能也做了,這樣就差不多相當于實現了一個命令行式的客戶端。有人也許會問,TT有windows,mac,ios,android全平臺客戶端,做個命令行的客戶端有什么用?當然有用了,測試功能方便啊,你不用考慮折騰界面就能把各種功能給測了。未來添加功能也方便寫測試,比如我現在新增一個注冊功能,在這個命令行上面輸入reg xx oo,那么一個用戶名叫xx的用戶便以密碼為oo注冊進了數據庫。對命令的解析可比做界面的事件響應函數方便多了。

好了,現在問題來了,shell命令的輸入是需要一個死循環來反復等待用戶輸入的,而tt的異步網絡框架又需要另一個死循環,如果兩個死循環放在同一線程里顯然不行,所以就把接受用戶輸入的死循環放到了另一個線程里面。那么當用戶輸入reg xx oo時,將這條命令解析出用戶名和密碼,并開始啟動注冊流程,這一切都是在另一個線程里做的。

注冊流程是怎么樣的呢?這里先講一講TT的conn框架。

TT的底層異步網絡庫是將socket和epoll封裝成一個netlib庫,你要做的任何有關異步網絡的操作都是通過調用netlib來實現的。但netlib只是一個原始的對tcp報文發送接收的異步庫,你要做即時通訊,還需要在此基礎上實現一套通訊協議,并且封裝一組接口來完成對這些協議的操作。

于是TT就定義了一個叫

CImConn的類,這個類定義在imconn.h里面。

為了方便大家閱讀,這里摘入部分代碼

class CImConn : public CRefObject { public:CImConn();virtual ~CImConn();int Send(void* data, int len);virtual void OnRead();virtual void OnWrite();bool IsBusy() { return m_busy; }int SendPdu(CImPdu* pPdu) { return Send(pPdu->GetBuffer(), pPdu->GetLength()); }virtual void OnConnect(net_handle_t handle) { m_handle = handle; }virtual void OnConfirm(){}virtual void OnClose(){}virtual void OnTimer(uint64_t){}virtual void OnWriteCompelete(){}virtual void HandlePdu(CImPdu*){}



接口的含義是顯而易見的,OnConnect就是有連接接入事件的響應函數, OnConfirm這個含義有點含糊,其實就是你發起netlib_connect,當這個connect連接建立完成時調用的函數。

這里為了方便你理解,做個類比,如果你做過android開發,想一下每次你寫一個應用的最常用的流程是什么樣的?定義一個類繼承Activity,然后override里面的onCreate等xx方法,是不是很相似?當然如果你沒有安卓開發經驗,類比一下ios吧,ios也是這樣的,如果ios也沒做過,那也沒關系,繼續往下看。

這里CImConn其實就是留給你繼承的,當你繼承后,請實現里面對應的成員函數。

如果你做的是服務端,那么需要實現OnConnect來響應用戶的接入,如果是客戶端,就需要OnConfirm來定義連接上服務器后的操作。其他幾個接口服務端和客戶端是通用的。

所以,看完這里你就會理解msg_server目錄下為什么有DBServConn,FileServConn, LoginServConn, RouteServConn, PushServConn以及MsgConn。

前面幾個都是消息服務器主動向其他幾個服務器發起的客戶端連接,最后一個是消息服務器自己的服務端Conn,用來等待用戶接入,所以需要實現OnConnect函數。

而login_server里面的HttpConn和LoginConn含義也顯而易見了,一個是用來響應http請求的,另一個是響應消息服務器login信息登記請求的。其他幾個服務器里的conn也以此類推。

之前對TT感到很凌亂的朋友是不是突然感覺自己頓悟了?感謝我吧。

另外一個疑問,TT的imconn框架是如何把這個CImConn和netlib連接起來的?

這里以DBServConn為例做一個解釋,看代碼

void CDBServConn::Connect(const char* server_ip, uint16_t server_port, uint32_t serv_idx) {log("Connecting to DB Storage Server %s:%d ", server_ip, server_port);m_serv_idx = serv_idx;m_handle = netlib_connect(server_ip, server_port, imconn_callback, (void*)&g_db_server_conn_map);if (m_handle != NETLIB_INVALID_HANDLE) {g_db_server_conn_map.insert(make_pair(m_handle, this));} }



CDBServConn是消息服務器像數據庫代理發起連接時需要繼承的一個CImConn類,里面的Connect函數是發起連接時調用的。看里面有調到netlib_connect,并傳入imconn_callback和g_db_server_conn_map。

這兩個參數就是連接imconn和netlib的關鍵。g_db_server_conn_map是定義在CDBServConn里的一個static全局map映射表,用來保存什么呢?下面一句

g_db_server_conn_map.insert(make_pair(m_handle, this)) 很明顯,這個映射表保存了每次連接的socket句柄(m_handle)和imconn對象(this)的映射關系。

當TT底層的事件分發器產生事件后,便會調用imconn_callback,里面有一個FindImConn會反查到對應的Conn,然后再調用Conn對象的OnConfirm等函數,這些函數就是你之前繼承CImConn自己實現的。運行時多態有木有?是不是覺得TT的框架做的還挺不錯的。conn對象的OnRead其實是最重要的一個函數,因為你的業務代碼都將在這里面自行實現。

void imconn_callback(void* callback_data, uint8_t msg, uint32_t handle, void* pParam) {NOTUSED_ARG(handle);NOTUSED_ARG(pParam);if (!callback_data)return;ConnMap_t* conn_map = (ConnMap_t*)callback_data;CImConn* pConn = FindImConn(conn_map, handle); //這里將會通過socket句柄反查到對于的imconnif (!pConn)return;//log("msg=%d, handle=%d ", msg, handle);switch (msg){case NETLIB_MSG_CONFIRM:pConn->OnConfirm(); //connect連接成功后會調此pConn的OnConfirm()函數break;case NETLIB_MSG_READ:pConn->OnRead(); //業務代碼會在這里面執行break;case NETLIB_MSG_WRITE:pConn->OnWrite();break;case NETLIB_MSG_CLOSE:pConn->OnClose();break;default:log("!!!imconn_callback error msg: %d ", msg);break;}pConn->ReleaseRef(); }

看看OnRead代碼,里面有一個HandlePdu

void CImConn::OnRead() {for (;;){uint32_t free_buf_len = m_in_buf.GetAllocSize() - m_in_buf.GetWriteOffset();if (free_buf_len < READ_BUF_SIZE)m_in_buf.Extend(READ_BUF_SIZE);int ret = netlib_recv(m_handle, m_in_buf.GetBuffer() + m_in_buf.GetWriteOffset(), READ_BUF_SIZE);if (ret <= 0)break;m_recv_bytes += ret;m_in_buf.IncWriteOffset(ret);m_last_recv_tick = get_tick_count();}CImPdu* pPdu = NULL;try{while ( ( pPdu = CImPdu::ReadPdu(m_in_buf.GetBuffer(), m_in_buf.GetWriteOffset()) ) ){uint32_t pdu_len = pPdu->GetLength();HandlePdu(pPdu); //這里面將會完成各種業務代碼m_in_buf.Read(NULL, pdu_len);delete pPdu;pPdu = NULL; // ++g_recv_pkt_cnt;}} catch (CPduException& ex) {log("!!!catch exception, sid=%u, cid=%u, err_code=%u, err_msg=%s, close the connection ",ex.GetServiceId(), ex.GetCommandId(), ex.GetErrorCode(), ex.GetErrorMsg());if (pPdu) {delete pPdu;pPdu = NULL;}OnClose();} }



摘一段CDBServConn的HandlePdu void CDBServConn::HandlePdu(CImPdu* pPdu) {switch (pPdu->GetCommandId()) {case CID_OTHER_HEARTBEAT:break;case CID_OTHER_VALIDATE_RSP:_HandleValidateResponse(pPdu );break;case CID_LOGIN_RES_DEVICETOKEN:_HandleSetDeviceTokenResponse(pPdu);break;case CID_MSG_UNREAD_CNT_RESPONSE:_HandleUnreadMsgCountResponse( pPdu );break;case CID_MSG_LIST_RESPONSE:_HandleGetMsgListResponse(pPdu);break;case CID_MSG_GET_BY_MSG_ID_RES:_HandleGetMsgByIdResponse(pPdu);break;case CID_MSG_DATA:_HandleMsgData(pPdu);break;case CID_MSG_GET_LATEST_MSG_ID_RSP:_HandleGetLatestMsgIDRsp(pPdu);break;



里面的handler就是對應不同協議的處理器。所以到此,你就會差不多明白,大部分時候,你要做的就是繼承CImConn然后寫handler。

TT的conn框架簡介就到此為止了,其實還有很多細節需要你自己去摳代碼,慢慢來。

現在回到一開始說的在另一個線程里發起注冊流程,你應該會很清楚整個過程是怎么做的了,其實就是繼承CImConn,然后在里面發起連接和接受連接處理。這里摘一段我代碼

net_handle_t CClientConn::Connect(const char* ip, uint16_t port, uint32_t idx) {m_handle = netlib_connect(ip, port, imconn_callback_sp, (void*)&s_client_conn_map);log("connect handle %d", m_handle);if (m_handle != NETLIB_INVALID_HANDLE) {log("in invalid %d", m_handle);s_client_conn_map.insert(make_pair(m_handle, shared_from_this()));//這里!!!}return m_handle; }



注意這里我自己的代碼跟之前給出的TT源碼略有不同,imconn_callback_sp是我改成智能指針的版本,插入conn_map表的不是原始this指針,而是shared_ptr。

這個操作是在子線程里進行的,所以netlib_connect會把imconn_callback_sp加入到底層事件分發器里進行監聽,而事件分發器是在主線程里運行的一個循環,這個循環會在socket文件句柄發生讀寫事件后對你加入的函數進行回調。所以netlib_connect會里面把imconn_callback加入主線程的監聽器,主線程一旦監聽到事件發生就會立刻調用此函數,而此函數里的

CImConn* pConn = FindImConn(conn_map, handle);

conn_map是在netlib_connect后insert的,所以就有可能出現FindImConn時,conn_map里面還沒有來得及insert這對關系,也就造成了偶爾會發生connect后沒有繼續調用后續的OnConfirm函數,而你跑到服務端看,connect確實成功的奇怪現象。多線程真要命啊。。。

那么如何解決這個問題呢?這個不是本文的要講的,各位有興趣請自行考慮解決的方法,這里友情提示,加鎖是沒有用的。

轉載于:https://my.oschina.net/u/877397/blog/486617

總結

以上是生活随笔為你收集整理的teamtalk的conn框架简介及netlib线程安全问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

亚洲妇女av| 天天狠狠操| 国产亚洲激情视频在线 | 西西大胆啪啪 | 中文字幕视频网站 | 国产成人精品亚洲精品 | 免费黄色a网站 | 天天干天天草天天爽 | 在线国产一区二区三区 | 日韩欧美高清免费 | 精品国产_亚洲人成在线 | 亚洲精品tv| 天天干天天干天天干 | 人人澡超碰碰97碰碰碰软件 | 91网页版免费观看 | 黄色综合| 91久久黄色 | 日韩激情久久 | 成人免费ⅴa | 亚洲婷婷网 | 亚洲aⅴ免费在线观看 | 中文av免费 | 国产免费国产 | 射射射av| 一区二区三区 亚洲 | av大片免费在线观看 | 亚洲欧美va | 国产精品美女免费看 | 久久精品99久久久久久 | 正在播放一区二区 | 国产视频在线观看一区 | 国产精品99久久久久人中文网介绍 | 欧美精品久久久久久久久久久 | 欧美亚洲一区二区在线 | 91毛片在线观看 | 欧美另类一二三四区 | 久久综合免费视频 | 日韩色视频在线观看 | 亚洲精品99 | 久久久人 | 精品96久久久久久中文字幕无 | 国产亚洲精品久久久久久久久久 | 91福利免费| 欧美日韩亚洲在线 | av电影在线免费观看 | 久久久999精品视频 国产美女免费观看 | 福利片视频区 | 国产专区在线看 | 一本一本久久a久久精品综合妖精 | 高清av免费看 | 亚洲视频免费在线观看 | 97在线观看视频国产 | 私人av| 成人黄色在线观看视频 | 中文在线a√在线 | 国产伦精品一区二区三区高清 | 国产精品国产三级国产aⅴ无密码 | 91精品久久久久久久久久久久久 | 日韩精品视频在线观看免费 | 99免费观看视频 | 欧美一级电影在线观看 | 久久精久久精 | 欧美日韩在线观看不卡 | 黄色大片入口 | 免费视频国产 | 色婷婷狠狠五月综合天色拍 | 美女一区网站 | 伊人永久 | 国产综合小视频 | 91av在线免费视频 | 九草视频在线 | 超碰午夜 | 韩国av不卡| 丁香久久综合 | 国产精品一区二区三区观看 | 国产精品九九久久久久久久 | 久草在线最新免费 | 一级黄网| 国产日产亚洲精华av | 日韩国产高清在线 | 不卡电影一区二区三区 | 欧美91精品久久久久国产性生爱 | 国产精品久久久久久久久久久免费看 | 一区二区三区在线免费播放 | 国产一区不卡在线 | 四虎国产精品永久在线国在线 | 午夜久久久精品 | 欧美日韩在线视频观看 | 综合色综合色 | 亚洲免费观看在线视频 | 久久久久久久久福利 | 日韩午夜大片 | 免费日韩 精品中文字幕视频在线 | 色婷婷成人网 | 91看片淫黄大片一级在线观看 | www.久久久精品| 激情五月播播久久久精品 | 亚洲国产精久久久久久久 | 免费看的黄色录像 | 开心色激情网 | 黄色1级毛片 | 国产黄色免费在线观看 | 亚洲美女精品视频 | 99久久久久久国产精品 | 亚洲一级性 | 久久国产精品精品国产色婷婷 | 国产成人精品区 | 中文字幕文字幕一区二区 | 欧美日韩另类视频 | 四虎成人免费影院 | 成人91av| 久久午夜视频 | 五月婷婷六月丁香 | 中国精品少妇 | 久久一级片 | 久久国产香蕉视频 | 国产精品视频地址 | 日本视频高清 | 欧美色图另类 | 国偷自产中文字幕亚洲手机在线 | www天天干| 欧美一级片在线免费观看 | 亚洲一区二区精品视频 | 亚洲精品99 | 午夜免费视频网站 | 中文字幕 第二区 | 在线91观看 | 日韩国产精品毛片 | 国产日产精品久久久久快鸭 | 色天堂在线视频 | 国产高清不卡一区二区三区 | 中文字幕一区二区三区久久 | 91视频成人免费 | 三级a视频 | 亚洲成a人片77777kkkk1在线观看 | 天天插伊人| 四虎在线观看网址 | 亚洲一区二区三区91 | 最新极品jizzhd欧美 | 亚洲老妇xxxxxx| 久久精品婷婷 | 美女免费黄网站 | 久久99精品一区二区三区三区 | 四虎成人精品永久免费av九九 | 欧美成人xxx| 久久久久久久国产精品视频 | 免费av大全 | 亚洲最大av网 | 亚洲理论片在线观看 | 亚洲精品乱码久久久久久高潮 | 久久久三级视频 | 日韩午夜电影网 | 五月综合色 | 在线a视频| 五月天久久久 | www.综合网.com | 99热在线国产精品 | 国产黄大片在线观看 | 永久精品视频 | 超碰在线98 | 免费观看xxxx9999片 | 91九色蝌蚪在线 | 99爱精品视频 | 国产美女主播精品一区二区三区 | 91成人精品在线 | 天天色天天搞 | 日韩中文字幕免费在线观看 | 天天天色综合a | 福利视频导航网址 | 久久手机视频 | 色吧av色av | 久久99精品久久久久久 | 国产二区视频在线 | 国产伦精品一区二区三区免费 | 精品a在线| 中文字幕91 | 国产在线观看午夜 | 精品在线观看视频 | 二区三区在线 | 黄色成人av | 99精品国产免费久久 | 91天天操| 欧美精品一区二区三区一线天视频 | 日韩两性视频 | 日韩免费视频观看 | 51精品国自产在线 | 久久综合色婷婷 | 欧美激情综合五月色丁香小说 | 五月婷婷,六月丁香 | 99精品国产视频 | 亚洲欧美在线视频免费 | 黄色日本免费 | 亚洲经典精品 | 国产婷婷色| 亚洲欧美日韩精品久久久 | 91成年人视频 | 97成人精品区在线播放 | 日本狠狠色 | 久久精品视频在线观看 | 日批网站免费观看 | 国产香蕉在线 | 精品在线二区 | 97在线观看视频 | 永久免费毛片在线观看 | 综合视频在线 | av不卡免费在线观看 | 天天添夜夜操 | 日本久久久久 | 欧美aaaxxxx做受视频 | 在线免费观看视频你懂的 | 91福利社区在线观看 | 五月天九九| 国产日韩精品在线观看 | 99国产精品免费网站 | 日本3级在线观看 | 五月天色中色 | 久草在线视频免费资源观看 | 国产精品第| 日本精品久久久久 | 亚州av成人 | 91成熟丰满女人少妇 | 久久久久久美女 | 国产黄色大片 | 美腿丝袜一区二区三区 | 国产精品美女久久久久久2018 | 久久午夜鲁丝片 | 女女av在线| 18做爰免费视频网站 | 久精品视频在线观看 | 婷婷国产精品 | 91视频专区 | 成人免费在线视频 | 6080yy午夜一二三区久久 | 久久免费视频一区 | 狠狠色丁香婷婷综合 | 81国产精品久久久久久久久久 | 在线观看aaa| 国内丰满少妇猛烈精品播放 | 97在线精品国自产拍中文 | 亚洲精品国产精品国自 | 伊人射| 97视频久久久 | 亚洲欧美视频网站 | 欧美亚洲专区 | 欧美日韩中 | 亚洲最新av网站 | 国产a级片免费观看 | 中文字幕 影院 | 九九热免费在线观看 | 天天摸夜夜操 | 欧洲视频一区 | www.色爱| 国产自产在线视频 | 91成品视频| 日韩在线观看视频在线 | 日韩精品视频免费 | 久草色在线观看 | 婷婷精品国产一区二区三区日韩 | 欧美天天干| 久久免费视频在线观看6 | 精品久久久久久久久久国产 | 国产999精品久久久影片官网 | 91av小视频 | 伊人久操| 狠狠躁18三区二区一区ai明星 | 亚洲aⅴ久久精品 | 怡红院av久久久久久久 | 六月丁香在线观看 | 91成人精品一区在线播放69 | 欧美在线观看视频免费 | 2023亚洲精品国偷拍自产在线 | 伊人亚洲精品 | 国产亚洲精品久久久久久久久久 | 欧日韩在线视频 | 91中文字幕网 | 国产精品久久久久久一二三四五 | 亚洲综合成人婷婷小说 | 国产真实精品久久二三区 | 在线观看视频你懂 | 韩日视频在线 | 国产精品久久久久久婷婷天堂 | 久久一区二区三区国产精品 | www.人人草 | 69久久99精品久久久久婷婷 | av短片在线观看 | 国产精品理论视频 | 天堂久久电影网 | 国产天天综合 | 国产亚洲精品无 | 国产探花在线看 | 国产精品久久久久久麻豆一区 | 麻豆精品传媒视频 | www.五月天婷婷 | 97免费| 五月婷婷中文网 | 欧美国产日韩中文 | 成人av网页 | 中文字幕在线观看第二页 | 一本到在线 | 日韩一区二区三区高清在线观看 | 免费午夜网站 | 999精品网| 99欧美精品 | 国产视频在线免费 | 国产在线看 | 99久久夜色精品国产亚洲 | 99精品视频免费观看 | 精品国产一区二区三区在线观看 | 成人午夜在线观看 | 日韩中午字幕 | 97色综合| 日女人电影| 日日日干| 精一区二区 | 99热在线网站| 91精品在线播放 | 日日操天天操狠狠操 | 嫩模bbw搡bbbb搡bbbb | 久久亚洲婷婷 | 四虎在线免费观看视频 | 96久久| 国产精品久久中文字幕 | 婷婷六月丁香激情 | 日韩二区三区在线观看 | 在线欧美小视频 | 国产一区高清在线观看 | 国产精品网红福利 | 久久综合网色—综合色88 | 国产精品亚洲精品 | 久久看视频 | 婷婷久久一区二区三区 | 国产黄色免费 | 色偷偷中文字幕 | 97视频免费观看2区 亚洲视屏 | 九九久久久久99精品 | 婷婷激情综合网 | 婷婷激情影院 | 国内精品亚洲 | 成人黄色大片 | 天天射天天射天天 | 精品一区二区在线观看 | 91成品人影院 | 成人免费观看在线视频 | 中文资源在线播放 | 亚洲精品女人久久久 | 国产精品理论在线观看 | 中文字幕黄色网 | 99久久久免费视频 | 人人射人人| 久久精选视频 | 中文字幕国产一区二区 | 久久精品国产精品 | 91在线视频观看 | 欧美成人在线网站 | 青青草视频精品 | 午夜影院日本 | 国产精品视频全国免费观看 | 中文字幕二区三区 | 成人免费视频免费观看 | 成人理论在线观看 | 色搞搞 | 中文字幕精品三区 | 91精品在线免费观看 | 久久视频在线看 | 午夜婷婷在线观看 | 99久久精品久久亚洲精品 | 成人夜晚看av | 久久久国内精品 | 日韩色综合网 | 伊人激情综合 | 看国产黄色大片 | 综合在线观看 | 国产中的精品av小宝探花 | 成人久久毛片 | 91伊人影院| 国产精品亚洲人在线观看 | 国产一区在线播放 | 人人人爽| 特黄特色特刺激视频免费播放 | 在线综合 亚洲 欧美在线视频 | 日韩a在线看 | 日本在线观看视频一区 | 91福利视频在线 | 四虎国产视频 | 午夜视频在线观看一区二区 | 狠狠色丁香婷婷 | 黄污视频大全 | 免费观看91视频大全 | 日本久热| 国产在线精品一区 | v片在线播放| 亚洲精品久久久久久久不卡四虎 | 日韩精品一区二区三区第95 | 在线免费黄色 | 国产精品日韩久久久久 | 综合久久久久久久 | 91色视频| 久久精品国产成人精品 | 中文字幕乱在线伦视频中文字幕乱码在线 | 日本aaaa级毛片在线看 | 国产午夜精品视频 | 国产精品短视频 | 在线 日韩 av | 黄色免费观看 | 亚洲美女视频在线 | 又黄又刺激视频 | 久草在线资源观看 | 丁香六月欧美 | 在线超碰av | 久久a免费视频 | 久草久草在线 | 91成人蝌蚪 | 欧美成年人在线视频 | www.亚洲精品 | 亚在线播放中文视频 | 国产成人久久精品一区二区三区 | 正在播放一区二区 | 日韩欧美在线第一页 | 欧美一级性生活视频 | 久久99欧美| 日韩精品一二三 | 日本久久久亚洲精品 | 中文字幕在线观看视频免费 | 日韩欧美在线免费观看 | 国产麻豆精品95视频 | 二区视频在线观看 | 国产免费三级在线观看 | 五月的婷婷| 在线观看免费黄视频 | 亚洲国产三级在线观看 | 精品在线观看国产 | 国产一区二区高清 | 欧美日韩亚洲一 | 免费成人在线电影 | 在线免费高清一区二区三区 | 亚洲第一av在线 | 免费看污的网站 | 三级黄色理论片 | 成人电影毛片 | 美女视频免费一区二区 | 国产亚洲精品久久久久久大师 | 天天色中文 | 91精品国产乱码在线观看 | 国产欧美在线一区 | 亚洲一区二区三区在线看 | 不卡的av电影在线观看 | 亚洲一区二区三区在线看 | 亚洲伦理一区 | 国产69精品久久99不卡的观看体验 | 500部大龄熟乱视频 欧美日本三级 | 在线观看日韩精品视频 | 福利视频午夜 | 91资源在线 | 91亚洲永久精品 | 亚洲a在线观看 | a电影在线观看 | 成人免费在线观看入口 | 精品国产美女 | japanese黑人亚洲人4k | 亚洲欧美日韩精品久久奇米一区 | 日韩网站在线免费观看 | 国产精品你懂的在线观看 | 色综合久久久久综合体 | 国产美女精品视频免费观看 | 中文字幕资源网 | 最新av观看 | 亚洲国产精品99久久久久久久久 | 98福利在线 | 综合色伊人 | 中文字幕 国产精品 | 亚洲精品高清在线 | 91av蜜桃 | av网站有哪些 | 久久艹精品 | 亚洲天堂网站视频 | 丁香国产视频 | 国产手机视频在线播放 | 欧美一二三区在线观看 | 久保带人 | 午夜精品剧场 | 黄色片视频免费 | 麻豆 91 在线 | 韩日精品中文字幕 | 国产精品18p | av中文字幕在线观看网站 | 国产一区二区不卡视频 | 亚洲成年片 | 中文字幕乱码亚洲精品一区 | 国产中文字幕在线播放 | 激情五月婷婷 | 国产高清不卡 | 丁香五香天综合情 | 欧美大片aaa| 亚洲精品国产综合久久 | 免费视频 你懂的 | 中文字幕av免费 | 国产高清日韩欧美 | 国产在线小视频 | av电影 一区二区 | 精品中文字幕在线播放 | 亚洲综合小说 | 丁香五月亚洲综合在线 | 这里只有精彩视频 | 中文字幕在线免费97 | 亚洲成人黄色 | 一区二区三区久久精品 | 欧美精品v国产精品 | av网站手机在线观看 | 久久精品99久久久久久 | 亚洲精品在线观看中文字幕 | 欧美久久久久久久久久久久久 | 久久婷婷激情 | 五月婷网站 | 婷婷五综合 | 国产黄色视 | 伊人网站 | 精品在线免费观看 | 国内精品视频免费 | 黄色视屏免费在线观看 | 亚洲伊人婷婷 | 国产精品毛片一区视频播 | 丁香视频五月 | 99c视频高清免费观看 | 欧美日韩在线免费视频 | 日韩精品一区二区三区免费观看视频 | 91免费观看视频网站 | 精品一区二区在线观看 | 久日精品 | 国产精品成人一区二区 | 久久久网| 色天天综合久久久久综合片 | 丁香婷婷激情 | 国产玖玖在线 | 国产精品久久久久婷婷二区次 | 成人毛片久久 | 夜夜骑天天操 | 婷婷深爱 | 国产精品久久久久久久久蜜臀 | 成年人视频在线观看免费 | 日韩欧美一区二区三区在线观看 | 国产又粗又猛又黄又爽 | 激情视频国产 | 日韩久久一区 | 国内亚洲精品 | av网站免费线看精品 | 99精品国产成人一区二区 | 九色精品免费永久在线 | 麻豆视传媒官网免费观看 | 五月天激情视频 | japanesefreesex中国少妇 | 在线黄色免费 | 久久99精品国产麻豆婷婷 | 99国产情侣在线播放 | 国产精品无av码在线观看 | 国产视频一区二区在线 | 日日夜夜天天干 | 奇米影视在线99精品 | 中文字幕无吗 | 一区二区三区韩国免费中文网站 | 国产精品一区二区精品视频免费看 | 精品美女在线观看 | 91精品国自产在线观看欧美 | 99在线精品观看 | 色婷婷a | 伊人成人久久 | 精品资源在线 | 欧美在线一级片 | 午夜视频在线观看一区二区三区 | 久久久男人的天堂 | 在线观看完整版 | 亚洲国产精品一区二区久久hs | 91精品国产欧美一区二区成人 | 亚洲黄色小说网 | 日韩在线观看电影 | 高清中文字幕av | 日韩免费成人 | 日本精品视频在线观看 | 久久一精品 | 黄色软件网站在线观看 | 国产va饥渴难耐女保洁员在线观看 | 亚洲精品国产精品久久99 | 欧美a级片免费看 | www.狠狠| 成人香蕉视频 | 国产视频精品久久 | 婷婷在线不卡 | 国内精品免费久久影院 | 最新91在线视频 | 国模精品一区二区三区 | 亚洲精品videossex少妇 | 99 久久久久| 欧美日韩视频在线观看免费 | 国产成人精品综合久久久久99 | www.91成人 | 人人干人人上 | 日韩电影在线一区二区 | 日韩欧美黄色网址 | 久久久久蜜桃 | 日韩国产精品久久久久久亚洲 | 欧洲一区二区三区精品 | 欧美性生活一级片 | 久久国产精品久久w女人spa | 中文字幕精品视频 | 国内精品久久久久久久久 | 美女黄视频免费看 | 免费视频资源 | 久久久久久看片 | av电影不卡在线 | 国产精品av免费在线观看 | 五月婷婷六月丁香在线观看 | 日本中文字幕观看 | 日韩试看 | 亚洲五月六月 | 高清av免费看 | 久久99国产精品免费网站 | 2018好看的中文在线观看 | 521色香蕉网站在线观看 | av大全在线播放 | www亚洲一区 | 最新av在线免费观看 | 国产日韩欧美视频 | 久久久久久久久久久久久久免费看 | 国产午夜亚洲精品 | av一级一片 | 在线免费观看视频一区 | 久久国产精品99久久久久久丝袜 | 欧美日韩高清在线观看 | 精品国产欧美一区二区 | 国产精品久久久久久久免费观看 | 亚洲精品久久久久久久蜜桃 | 天天色天天射天天操 | 色就色,综合激情 | 麻豆精品视频 | 不卡av免费在线观看 | 超碰97国产| 国产一级不卡毛片 | 日韩黄色免费 | 国产在线999 | 免费成人av在线看 | 久久超 | 亚洲日韩欧美一区二区在线 | 久久久久一区二区三区四区 | 97在线看 | 久草电影在线观看 | 在线色资源 | 99色在线 | 成人在线播放av | 欧美日韩中字 | 九九热视频在线 | 久久福利国产 | 成人黄色大片网站 | 91精品国产高清自在线观看 | 97超碰色 | www.色爱| 欧美日韩亚洲第一 | 国产品久精国精产拍 | 精品久久久久久综合 | 国产五月 | 成人午夜在线观看 | 国产精品美女久久久久久 | 婷婷在线免费视频 | 成人久久18免费网站图片 | 日韩视频中文字幕在线观看 | 欧美性生活大片 | 成人蜜桃视频 | 久久免费视频国产 | 人人舔人人爱 | 亚洲精品乱码久久久久 | 亚洲成人av在线播放 | 亚洲欧洲一区二区在线观看 | 久久久综合九色合综国产精品 | 人成电影网| 国产激情久久久 | 精品久久久久久久久久久院品网 | 亚洲午夜久久久综合37日本 | 草久久影院 | www.超碰| 免费在线中文字幕 | 国产69精品久久久久99尤 | 成人av中文字幕 | 成人黄色资源 | 成人h电影 | 国产成人在线播放 | 国产精品美女视频 | 日日夜夜干 | 韩国在线一区二区 | 久久av黄色| 日韩精品久久一区二区 | 成人久久免费 | 中文字幕在线电影 | 天天爱天天射 | www狠狠操 | 国产91精品一区二区麻豆亚洲 | 亚洲精品啊啊啊 | 99精品在线免费观看 | 色午夜| 99久久精品免费看 | 欧美日韩中文视频 | 国产精品门事件 | 在线小视频你懂得 | 久久久免费精品国产一区二区 | av免费在线播放 | 国内精品免费久久影院 | 2023亚洲精品国偷拍自产在线 | 色综合久久综合中文综合网 | 国产精品久久久久久久久久妇女 | 99精品久久久久久久 | 天天色天天艹 | 精品久久久久久久久久久久 | 日韩av在线一区二区 | 久久久天堂 | 黄色av大片 | 久久手机视频 | 久久久亚洲麻豆日韩精品一区三区 | 久久久久综合网 | 探花视频在线观看免费 | 国产精品成人久久 | 国产一区二区三区在线 | 欧美日韩在线观看一区二区 | 99精品免费在线 | 91人人揉日日捏人人看 | 久久久久国产精品免费 | 国产精品久久久久久久久久白浆 | 92精品国产成人观看免费 | 久久久久成人免费 | 天天爽综合网 | 在线观看精品一区 | 免费日韩 精品中文字幕视频在线 | 久久不卡av| 视频一区二区在线观看 | 婷婷色影院 | 久久综合久久综合这里只有精品 | 日日操网站 | 国产日韩在线播放 | 亚洲成人xxx | 国产在线观看你懂得 | 久久av影视 | 欧美一级视频一区 | 国产中文字幕在线免费观看 | 韩国av免费看 | 欧美大香线蕉线伊人久久 | 日批视频在线播放 | 免费观看性生活大片3 | 免费看三级黄色片 | 成人免费色| 成人影音av | 亚洲电影久久 | 亚洲国产色一区 | 欧美福利久久 | 婷婷伊人综合亚洲综合网 | 黄色毛片视频 | 国产日产av | 日韩高清精品一区二区 | 欧美成人h版在线观看 | 99精品视频免费在线观看 | 色视频成人在线观看免 | av中文字幕av | 久久一区二区三区四区 | 亚洲波多野结衣 | 日韩有码在线播放 | 九九免费视频 | 高清av影院| 91福利在线观看 | 久久精品官网 | 亚洲精品日韩在线观看 | 精品视频成人 | 九九激情视频 | 粉嫩一二三区 | 激情综合色综合久久综合 | 午夜精品久久久久久中宇69 | 激情久久五月天 | 精品二区视频 | 久久久久国产视频 | 911国产精品| 欧美精品一区二区免费 | 97偷拍在线视频 | 91成人精品在线 | 久草在线这里只有精品 | 久艹视频免费观看 | 四虎国产永久在线精品 | 在线看片成人 | 中文字幕资源网 | 婷婷色站| 久久久男人的天堂 | av九九九 | 一本一本久久a久久精品综合妖精 | 亚洲精品乱码久久久久久蜜桃91 | 精品久久久久久亚洲综合网站 | 18网站在线观看 | 蜜臀av夜夜澡人人爽人人 | 国产精品久久99综合免费观看尤物 | avove黑丝 | 国产成人精品av在线观 | www.天天色.com | 成人三级av| 狠狠干婷婷 | 国产精品免费人成网站 | 在线视频久久 | 午夜美女福利直播 | 国产高清视频在线播放 | 在线观看黄色小视频 | 9797在线看片亚洲精品 | 伊人五月天av | 日韩资源在线播放 | 精品福利视频在线 | 97超碰在线免费 | 99久久99久久精品国产片 | 国产日韩欧美在线免费观看 | 日日弄天天弄美女bbbb | 国产精品麻豆三级一区视频 | av一级网站 | 精品国产诱惑 | 在线观看免费日韩 | 日韩v欧美v日本v亚洲v国产v | 在线看小早川怜子av | 日韩视频1 | 日韩成人精品一区二区 | 日日日操 | 国产精品 中文字幕 亚洲 欧美 | 国产一区二区不卡视频 | 免费中午字幕无吗 | 91在线小视频 | 久99视频| 亚洲精品久久久久www | 久久视频在线观看 | 色综合天天色综合 | 一级做a爱片性色毛片www | 亚洲日日日| 久久免费视频一区 | 一区二区欧美在线观看 | 狠狠地操 | 精品国产电影一区二区 | 91激情视频在线观看 | 国产区精品视频 | 五月天综合网站 | 亚洲国产精品va在线看黑人动漫 | www一起操 | 日韩久久一区二区 | 国内精品亚洲 | 91看片看淫黄大片 | 一区二区三区电影 | 午夜黄色一级片 | 日韩视频在线观看视频 | 免费看色网站 | 国产成人av电影在线 | 2023亚洲精品国偷拍自产在线 | 欧美精品二区 | 在线视频 区 | 日日夜夜精品视频 | 国产高清av在线播放 | 2022国产精品视频 | 成人国产精品久久久久久亚洲 | 久久久精品亚洲 | 国产精品欧美久久久久久 | 99热这里只有精品1 av中文字幕日韩 | 日日日日 | 中文字幕久久亚洲 | 日韩视频免费观看高清 | 国产一区二区在线影院 | 久久久久久综合网天天 | 91在线日韩| 91精品国产成人 | 成人小视频在线播放 | 国产一级黄色电影 | 日本久久片 | 亚洲乱码精品久久久 | 欧美另类xxx| 六月丁香激情综合 | 黄色成人免费电影 | 一区 二区电影免费在线观看 | 成人免费毛片aaaaaa片 | 8x成人在线| 日韩精品一区二区三区丰满 | 99精品乱码国产在线观看 | 亚洲精品午夜一区人人爽 | 97精品久久人人爽人人爽 | 国产真实精品久久二三区 | 中文字幕国产一区二区 | 天天操网址 | 国产一级一级国产 | 天天操天天摸天天干 | 国内揄拍国内精品 | 久久精品免视看 | 综合天天色 | 午夜精品电影一区二区在线 | 国产小视频在线观看 | 色av资源网| 久久免费观看少妇a级毛片 久久久久成人免费 | 黄色大片日本免费大片 | 久久久久久亚洲精品 | 最近日韩免费视频 | 国产原创av片 | 亚洲黄色小说网 | 国产日产av | 丁香狠狠 | 色综合中文综合网 | 久久久精品日本 | 国产一区二三区好的 | av 在线观看 | 免费大片av | av蜜桃在线 | 97超碰人人 | 国产精品一区二区三区免费视频 | 色婷婷狠狠五月综合天色拍 | 亚洲精品午夜国产va久久成人 | 免费三级网 | 四虎精品成人免费网站 | 亚洲精品乱码久久久久久蜜桃动漫 | 狠狠色丁香久久婷婷综合_中 | 成人一区二区在线观看 | 精品免费久久久久 | 伊人色综合久久天天 | 少妇视频一区 | 黄网av在线 | 99久久www免费 | 日韩av在线网站 | 国产精品入口麻豆 | 国产一区不卡在线 | 久久久久国产a免费观看rela | 99国产在线视频 | 成人免费观看a | 99这里只有久久精品视频 | 在线观看免费av片 | 国产中文字幕视频在线观看 | 九九精品视频在线看 | 国产精品成 | 啪啪免费观看网站 | 免费日韩电影 | 91在线精品播放 | 欧美日韩一区二区三区在线观看视频 | 亚洲aaa级| av成人在线看 | 久久精品国产免费看久久精品 | 中文字幕色综合网 | 中文av资源站 | 国产精品欧美久久久久天天影视 | 91视频免费国产 | 国产福利网站 | 欧美最猛性xxxxx(亚洲精品) | 在线视频你懂 | 狠狠色婷婷丁香六月 | 二区三区在线视频 | 国产精品久久久久久久久久久久久久 | 探花视频在线版播放免费观看 | 九九久久久久久久久激情 | 国产在线观看黄 | 性色av免费在线观看 | 亚洲精品视频网 | 久久久久麻豆v国产 | 91精品国产成人www | 日韩成年视频 | 欧美国产不卡 | 超碰在线成人 | 欧美精品v国产精品 | 丁香五月缴情综合网 | 国产精品一区免费观看 | 亚洲欧美日韩精品一区二区 | 少妇高潮冒白浆 | 亚洲精品国久久99热 | 99性视频| 一区二区三区手机在线观看 | 六月丁香激情综合 | 久久久污 | 99热精品久久 | 精品亚洲一区二区三区 | 久久精品三 | 精品亚洲国产视频 | 中文字幕在线观看完整版电影 | 天天射天天色天天干 | 欧美午夜久久久 | 精品 一区 在线 | 欧美日韩高清在线观看 | 日韩在线免费高清视频 | 久久人人爽人人爽人人 | 国产精品女同一区二区三区久久夜 | 亚洲一级黄色 | 中文字幕免费高清在线观看 | 五月婷婷影院 | 在线国产视频 | 成人国产精品入口 | 日韩丝袜| 日韩欧美一区二区不卡 | 婷婷在线色 | 久久韩国免费视频 | 国产在线成人 | 91网站在线视频 | 国产成人三级三级三级97 | 久在线观看视频 | 精品久久久一区二区 | 亚洲综合激情五月 | 国产资源免费在线观看 | 99久久日韩精品免费热麻豆美女 | 免费日韩一区 | 亚洲欧美日韩不卡 | 日本午夜在线观看 | 欧洲激情综合 | 婷婷在线色 | 国产xxxxx在线观看 |