标签: c++ sockets
我正在尝试创建一个Web服务器,它将接受来自sockets的请求和命令(在不同的ports中)。我有一些演示code用于简单的套接字通信,它按预期编译和运行,但是当我运行时(用demo作为参考编写,这就是为什么有一些printf's){{1} }失败了:
sockets
ports
code
printf's
“无效参数”为错误。我找不到有什么不对。
任何建议/更正都表示赞赏。
这是我的代码:
accept()
答案 0 :(得分:4)
在致电接受之前,你应该打电话给听。
来自accept manual:
EINVAL Socket is not listening for connections, or addrlen is invalid (e.g., is negative).
你应该在循环之前添加:
listen(serv_sock,5); listen(command_sock,5);
但是,如果没有待处理的连接,为了不阻止accept来电,您应该考虑使用select或poll。 这将允许在调用accept
accept