当前位置: 技术问答>linux和unix
请教LINUX 中 服务端 accept 函数
来源: 互联网 发布时间:2016-01-04
本文导语: 在服务端 当listen ( sock, 5 ) 执行好了后 new_sd = accept(sock,0,0) 进行阻塞 等待客户端连接 如果长时间没有客户端连接,服务端的程序将不见了pid 号 并且绑定的端口号不能用,客户端再连接竟连接不上, 要求服务...
在服务端
当listen ( sock, 5 ) 执行好了后
new_sd = accept(sock,0,0) 进行阻塞 等待客户端连接
如果长时间没有客户端连接,服务端的程序将不见了pid 号
并且绑定的端口号不能用,客户端再连接竟连接不上,
要求服务端24小时常开
哪位老大解决一下啊
一次性给分
当listen ( sock, 5 ) 执行好了后
new_sd = accept(sock,0,0) 进行阻塞 等待客户端连接
如果长时间没有客户端连接,服务端的程序将不见了pid 号
并且绑定的端口号不能用,客户端再连接竟连接不上,
要求服务端24小时常开
哪位老大解决一下啊
一次性给分
|
或者下面这样用:
acc_sock = accept(sock, (struct sockaddr_in *)NULL, (socklen_t *)NULL);
用0显然是不行的,0怎么能转换成struct sockaddr_in型?
acc_sock = accept(sock, (struct sockaddr_in *)NULL, (socklen_t *)NULL);
用0显然是不行的,0怎么能转换成struct sockaddr_in型?
|
accept不是你那样用得吧!?
int accept(
int s,
struct sockaddr *addr,
socklen_t *addrlen
);
你的有两个参数都是0?什么意思?
int accept(
int s,
struct sockaddr *addr,
socklen_t *addrlen
);
你的有两个参数都是0?什么意思?