資料介紹
軟件簡(jiǎn)介
mthread
簡(jiǎn)介
[mthread]是一個(gè)基于協(xié)程的高性能網(wǎng)絡(luò)庫(kù),目前提供支持TCP/UDP等協(xié)議的非阻塞式的客戶端庫(kù)(服務(wù)端正在開(kāi)發(fā)中...)
特性
-
不用依賴任何第三方庫(kù)
-
基于支持多個(gè)平臺(tái)的協(xié)程調(diào)度
-
支持epoll,kequeue
-
不用寫異步調(diào)度代碼,全部代碼同步,但是框架內(nèi)部是異步處理
-
提供非阻塞TCP客戶端
-
提供非阻塞UDP客戶端
-
優(yōu)秀的跨平臺(tái)特性和高性能(理論上只要系統(tǒng)內(nèi)存足夠大,句柄沒(méi)有限制,可以無(wú)限創(chuàng)建無(wú)限個(gè)協(xié)程)
-
使用簡(jiǎn)單,只需要引入一個(gè)libmthread.a或者ibmthread.so
除此之外,基于該庫(kù)之上正在開(kāi)發(fā)各個(gè)客戶端庫(kù):memcache,redis,wrk等
快速開(kāi)始
編譯
編譯.a或者.so,到當(dāng)前目錄下執(zhí)行:
make
編譯測(cè)試代碼,到tests目錄下執(zhí)行:
make
或者只運(yùn)行某個(gè)單元測(cè)試:
make event
An dns client
void?func(void?*args)
{
????std::string?*str?=?(std::string*)args;
????time_t?ttl?=?0;
????std::vector?vc;
????int?ret?=?GetInstance()->dns_lookup(str->c_str(),?vc,?&ttl);
????if?(ret?0)?
????{
????????LOG_ERROR("%s,?make?dns?query?failed",?str->c_str());
????????return?;
????}
????for?(std::vector::iterator?iter?=?vc.begin();?
????????iter?!=?vc.end();?iter++)?
????{
????????struct?in_addr?addr;
????????memcpy(&addr,?&(*iter),?sizeof(struct?in_addr));
????????LOG_DEBUG("%s,?%d,?%s",?str->c_str(),?*iter,?inet_ntoa(addr));
????}
????LOG_DEBUG("ttl?:?%ld",?ttl);
}
int?main(int?argc,?char*?argv[])
{
????int?ret?=?mt_init_frame();
????LOG_DEBUG("init?ret?:?%d",?ret);
????mt_set_hook_flag();
????mt_set_timeout(200);
????Frame?*frame?=?GetInstance();
????//?測(cè)試?:?使用協(xié)程請(qǐng)求耗時(shí)
????LOG_DEBUG("---?start?time?:?%ld",?Utils::system_ms());
????for?(int?i?=?2000;?i?2005;?i++)
????{
????????std::stringstream?ss;
????????ss?<"www."?<
說(shuō)明其中dns內(nèi)部修改調(diào)用接口
...
????addr.sin_family?=?AF_INET;
????if?(m_dns_svr_?==?NULL)
????{
????????addr.sin_addr.s_addr?=?inet_addr(PUBLIC_DNS_DEFAULT_SERVER);??///服務(wù)器ip
????}
????else
????{
????????addr.sin_addr.s_addr?=?inet_addr(m_dns_svr_);??///服務(wù)器ip
????}
????addr.sin_port?=?htons((uint16_t)PUBLIC_DNS_DEFAULT_PORT);
????int?query_len?=?make_dns_query_format();
????if?(query_len?<=?0)?
????{
????????return?-1;
????}
????int?recv_len?=?sizeof(m_recv_buf_);
????ret?=?udp_sendrecv(&addr,?m_send_buf_,?query_len,?m_recv_buf_,?recv_len,?m_timeout_);
????LOG_DEBUG("ret?:?%d,?recv_buf?:?%s,?recv_len?:?%d",?ret,?m_recv_buf_,?recv_len);
...
- 具有小浮點(diǎn)的高性能神經(jīng)網(wǎng)絡(luò)
- 同步網(wǎng)絡(luò)高性能線卡的應(yīng)用
- Swow高性能純協(xié)程網(wǎng)絡(luò)通信引擎
- 高性能Type-C/DP1.4至HDMI2.0b轉(zhuǎn)換器CS5265AN 22次下載
- MX25L6445E高性能串行閃存規(guī)范文件 20次下載
- 高效高性能LED恒流驅(qū)動(dòng)電源芯片AX2028 24次下載
- 高性能低成本的藍(lán)牙模塊CSR6576原理圖 17次下載
- 將置信規(guī)則庫(kù)分級(jí)優(yōu)化的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)方法 11次下載
- SBB3089Z高性能InGaP HBT MMIC放大器
- 調(diào)整VCP2和TCP2位錯(cuò)誤率性能的策略和編程方法 4次下載
- OV971高性能視頻汽車視覺(jué)應(yīng)用簡(jiǎn)介.pdf 1次下載
- 高性能CPU的時(shí)鐘網(wǎng)絡(luò)設(shè)計(jì) 23次下載
- 高性能CPU時(shí)鐘網(wǎng)絡(luò)設(shè)計(jì) 46次下載
- 簡(jiǎn)述協(xié)處理器發(fā)展歷程及前景展望
- 支持COC的低層高性能通信庫(kù)
- 揭秘瑞芯微算力協(xié)處理器,RK3576/RK3588強(qiáng)大算力搭檔 958次閱讀
- 談?wù)?b class="flag-6" style="color: red">協(xié)程的那些事兒 1.9k次閱讀
- 高性能網(wǎng)絡(luò)框架之XDP技術(shù)解析 6.2k次閱讀
- 高性能數(shù)學(xué)計(jì)算庫(kù)的現(xiàn)狀 3.2k次閱讀
- 高性能計(jì)算關(guān)鍵組件核心知識(shí) 2.1k次閱讀
- 詳解Linux線程、線程與異步編程、協(xié)程與異步 1.8k次閱讀
- 基于NVIDIA QM8700/8790交換機(jī)與HDR網(wǎng)卡的InfiniBand高性能網(wǎng)絡(luò)解決方案 6.1k次閱讀
- 一個(gè)高性能異步計(jì)算框架介紹 1.3k次閱讀
- 使用channel控制協(xié)程數(shù)量 1.7k次閱讀
- 詳解Netty高性能異步事件驅(qū)動(dòng)的網(wǎng)絡(luò)框架 2.6k次閱讀
- 驍龍835有協(xié)處理器嗎 7k次閱讀
- 手機(jī)上的協(xié)處理器有什么作用_蘋果協(xié)處理器是干什么的 2.3w次閱讀
- Python自動(dòng)化運(yùn)維之協(xié)程函數(shù)賦值過(guò)程 4k次閱讀
- Python中的多核CPU共享數(shù)據(jù)之協(xié)程詳解 7.2k次閱讀
- 基于FPGA協(xié)處理器的汽車信息娛樂(lè)系統(tǒng)設(shè)計(jì) 2.3k次閱讀
下載排行
本周
- 1新一代網(wǎng)絡(luò)可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費(fèi)
- 2冷柜-電氣控制系統(tǒng)講解
- 13.68 MB | 1次下載 | 10 積分
- 3MDD品牌三極管MMBT3906數(shù)據(jù)手冊(cè)
- 2.33 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管S9012數(shù)據(jù)手冊(cè)
- 2.62 MB | 次下載 | 免費(fèi)
- 5LAT1218 如何選擇和設(shè)置外部晶體適配 BlueNRG-X
- 0.60 MB | 次下載 | 3 積分
- 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
- 0.89 MB | 次下載 | 3 積分
- 7收音環(huán)繞擴(kuò)音機(jī) AVR-1507手冊(cè)
- 2.50 MB | 次下載 | 免費(fèi)
- 8MS1000TA 超聲波測(cè)量模擬前端芯片技術(shù)手冊(cè)
- 0.60 MB | 次下載 | 免費(fèi)
本月
- 1愛(ài)華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說(shuō)明
- 0.31 MB | 22次下載 | 1 積分
- 4UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
- 7100W準(zhǔn)諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
- 8FS8025B USB的PD和OC快充協(xié)議電壓誘騙控制器IC技術(shù)手冊(cè)
- 1.81 MB | 1次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開(kāi)源硬件-PMP21529.1-4 開(kāi)關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問(wèn)
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論