C语言使用多进程实现高并发tcp服务器
多进程并发服务器的流程 socket; 创建监听套接字 bind; 绑定地址结构 listen(); 设置监听上限 accept();进行循环监听 fork();接收到客户端请求创建新的进程 close(); 与客户端通讯的套接字关闭 实现C语言并发服务器 #include <stdio.h> #include <apra/inet.h> #include <errno.h> #include <sys/socket.h> #include <unistd.h> #include <signal.h> void perr_exit(const char *s){ perror(s); exit(-1); } int Accept(int fd, struct sockaddr *sa, socklen_t *salenptr) { int n; again: if((n = accept(fd,sa,salenptr))<0){ if((errno == ECONNABORTED) || errno == EINTR) goto again; else perr_exit("accept error"); } return n; } int Bind(int fd, struct sockaddr *sa, socklen_t salen) { int n; if ((n =