資料介紹
軟件簡(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
-
不用寫(xiě)異步調(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耗盡型MOS FET產(chǎn)品目錄選型表
- 0.14 MB | 2次下載 | 免費(fèi)
- 2TI系列-米爾TI AM62L核心板開(kāi)發(fā)板-高能效低功耗嵌入式平臺(tái)
- 1.51 MB | 次下載 | 免費(fèi)
- 3WILLSEMI韋爾20年半年度報(bào)告由代理分銷經(jīng)銷一級(jí)代理分銷經(jīng)銷
- 3.30 MB | 次下載 | 免費(fèi)
- 4LRC 樂(lè)山無(wú)線電InTWSApplications家電由原廠代理分銷經(jīng)銷一級(jí)代理分銷經(jīng)銷供應(yīng)
- 85.84 KB | 次下載 | 免費(fèi)
- 5LAT1596 一文說(shuō)明白 STM32G4 雙 Bank 啟動(dòng)與升級(jí)
- 0.64 MB | 次下載 | 5 積分
- 6LAT1594_基于事件喚醒低功耗之介紹
- 0.37 MB | 次下載 | 5 積分
- 7PT8P2309 觸控 A/D 型 8-Bit MCU規(guī)格書(shū)
- 4.05 MB | 次下載 | 免費(fèi)
- 8PT8P2308 觸控 A/D 型 8-Bit MCU規(guī)格書(shū)
- 4.13 MB | 次下載 | 免費(fèi)
本月
- 1美的電磁爐電路原理圖資料
- 4.39 MB | 19次下載 | 10 積分
- 2反激式開(kāi)關(guān)電源設(shè)計(jì)解析
- 0.89 MB | 11次下載 | 5 積分
- 3耗盡型MOS FET產(chǎn)品目錄選型表
- 0.14 MB | 2次下載 | 免費(fèi)
- 4簡(jiǎn)易光伏控制器原理圖資料
- 0.07 MB | 1次下載 | 5 積分
- 52EDL05x06xx系列 600V半橋門驅(qū)動(dòng)器帶集成自舉二極管(BSD)手冊(cè)
- 0.69 MB | 1次下載 | 免費(fèi)
- 6國(guó)產(chǎn)千兆網(wǎng)口芯片PT153S中文資料
- 1.35 MB | 次下載 | 免費(fèi)
- 7斯丹電子 | 用于芯片測(cè)試系統(tǒng)的射頻干簧繼電器
- 5.11 MB | 次下載 | 免費(fèi)
- 8SFI立昌ESD/TVS管原廠代理分銷經(jīng)銷一級(jí)代理分銷經(jīng)銷
- 294.76 KB | 次下載 | 免費(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下載入口
- 未知 | 233095次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191448次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183360次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81605次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73829次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





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