當(dāng)前位置:首頁(yè) > 公眾號(hào)精選 > C語(yǔ)言與CPP編程
[導(dǎo)讀]1.單線程/進(jìn)程在TCP通信過(guò)程中,服務(wù)器端啟動(dòng)之后可以同時(shí)和多個(gè)客戶端建立連接,并進(jìn)行網(wǎng)絡(luò)通信,但是在介紹TCP通信流程的時(shí)候,提供的服務(wù)器代碼卻不能完成這樣的需求,先簡(jiǎn)單的看一下之前的服務(wù)器代碼的處理思路,再來(lái)分析代碼中的弊端://?server.c#include?#inc...

1. 單線程 / 進(jìn)程

在 TCP 通信過(guò)程中,服務(wù)器端啟動(dòng)之后可以同時(shí)和多個(gè)客戶端建立連接,并進(jìn)行網(wǎng)絡(luò)通信,但是在介紹 TCP 通信流程的時(shí)候,提供的服務(wù)器代碼卻不能完成這樣的需求,先簡(jiǎn)單的看一下之前的服務(wù)器代碼的處理思路,再來(lái)分析代碼中的弊端:

//?server.c
#include?
#include?
#include?
#include?
#include?

int?main()
{
????//?1.?創(chuàng)建監(jiān)聽(tīng)的套接字
????int?lfd?=?socket(AF_INET,?SOCK_STREAM,?0);
????//?2.?將socket()返回值和本地的IP端口綁定到一起
????struct?sockaddr_in?addr;
????addr.sin_family?=?AF_INET;
????addr.sin_port?=?htons(10000);???//?大端端口
????//?INADDR_ANY代表本機(jī)的所有IP,?假設(shè)有三個(gè)網(wǎng)卡就有三個(gè)IP地址
????//?這個(gè)宏可以代表任意一個(gè)IP地址
????addr.sin_addr.s_addr?=?INADDR_ANY;??//?這個(gè)宏的值為0?==?0.0.0.0
????int?ret?=?bind(lfd,?(struct?sockaddr*)
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。

C語(yǔ)言與CPP編程

252 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉