#include #include #include #include #include #include #include #include #include int sockfd;
// 斷開訊號處理函式
void sig_handler(int signo)
}// 伺服器端輸出客戶端的資訊
void out_addr(struct sockaddr_in *clientaddr)
// 像客戶端輸出當前伺服器時間
void do_service(int fd)
}int main(int argc, char *ar**)
if(signal(sigint, sig_handler) == sig_err)
// tcp協議
// af_inet: ipv4
// sock_stream: tcp
// 建立套接字
sockfd = socket(af_inet, sock_stream, 0);
// 將ip位址和埠號繫結套接字
struct sockaddr_in serveraddr;
memset(&serveraddr, 0, sizeof(serveraddr));
serveraddr.sin_family = af_inet;
serveraddr.sin_port = htons(atoi(ar**[1]));
serveraddr.sin_addr.s_addr = inaddr_any;
if(bind(sockfd,(struct sockaddr*)&serveraddr,
sizeof(serveraddr))<0)
// 監聽套接字
if(listen(sockfd,10) <0)
struct sockaddr_in clientaddr;
socklen_t clientaddr_len = sizeof(clientaddr);
while(1)
// 作出響應
out_addr(&clientaddr);
do_service(fd);
close(fd);
}}
使用
telnet + ip位址+埠連線伺服器
telnet 127.0.0.1 8888
或者使用瀏覽器
連線伺服器
linux c 高併發tcp伺服器架構
from epoll 接受資料到佇列,執行緒池處理佇列裡的資料 具體實現方式 只使用使用std的的資料結構,未使用boost thread pool.cpp include include include thread pool.h include thread process.h include ...
linux c 伺服器學習
網易雲課堂有乙個計算機專業課程體系 網上有一些學習路線 谷歌推薦的電腦科學學習路線 cs 電腦科學mooc學習路線 知乎上有這樣乙個問題 linux c 伺服器端這條線怎麼走?一年半能做出什麼?一些摘抄,陳碩說的點讚最多 tom pareto 說的 後台開發,從基礎到高階,有什麼好的書籍推薦?陳碩的...
Linux C 回射伺服器
回射伺服器就是服務端將客戶端的資料傳送回去。我實現的回射伺服器返回增加了時間。服務端 可以很容易看懂 cpp view plain copy include include include include include include include include include define ...