摘要: 服务器端程序如下: 1 #include<stdio.h> 2 #include <sys/types.h> /* See NOTES */ 3 #include <sys/socket.h> 4 #include <netinet/ip.h> 5 #include <errno.h> 6 #inc 阅读全文
posted @ 2021-05-28 18:09 疯狗强尼 阅读(54) 评论(0) 推荐(0) 编辑
摘要: 在前面的回射服务器中,无法处理多个客户端的连接,原因在于线程中,有一个死循环一直接收客户端发送的消息,accept函数没有机会从listen维护的就绪队列头中获取新的连接。 处理办法:将accept置于一个死循环中不断接收新的连接,当接收新的连接后,开辟一个新的进程,在新进程中处理和客户端的通信。 阅读全文
posted @ 2021-05-28 13:25 疯狗强尼 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 服务器端重启后会出现地址被占用的情况,主要原因是程序调用bind后的地址没被释放,服务端程序处于TIME_WAIT状态,用netstat -an|grep TIME_WAIT可以查看到,所以服务器端在绑定端口前要进行地址重用操作 1 #include<stdio.h> 2 #include <sys 阅读全文
posted @ 2021-05-28 12:47 疯狗强尼 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 一、服务器端 1 #include<stdio.h> 2 #include <sys/types.h> /* See NOTES */ 3 #include <sys/socket.h> 4 #include <netinet/ip.h> 5 #include <errno.h> 6 #includ 阅读全文
posted @ 2021-05-28 12:05 疯狗强尼 阅读(77) 评论(0) 推荐(0) 编辑