首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何重启sockets程序?

如何重启sockets程序?
EN

Stack Overflow用户
提问于 2009-03-07 02:07:25
回答 1查看 673关注 0票数 1

我需要我的服务器保持与服务器的连接。有人知道怎么做吗?或者发布链接教程之类的东西?

它还说,当它重新启动时,“无法接受客户端”,那么我如何清除所有内容并使其接受它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-03-07 02:11:23

服务器代码:

对于您的服务器端代码,执行一个包装accept调用的循环。对于已创建的已接受套接字,创建一个新线程,以便立即调用下一个accept。

在服务器启动时,您可能还希望使用SO_REUSEADDR标志。这样,如果您遇到崩溃,甚至是程序的快速重启,那么您的服务器将能够再次使用相同的端口,而不会出现问题。

客户端代码:

对于您的客户端代码,您只需检查套接字错误,如果发生,只需建立一个新的连接。

其他资源:

  • Beej's guide to network programming是学习套接字编程的一个很好的资源。
  • Frostbytes.com也有一个great tutorial on socket programming.
  • If,你想要更深入的东西,请查看W.理查德·史蒂文斯的Unix Network Programming 3rd Edition

其他选项:

您还可以尝试使用boost asio来简化套接字编程,而不是使用普通的bsd样式的套接字。你可以看看他们的examples page

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/621157

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档