gpt4 book ai didi

c++ - 多线程 TCP 服务器的 TCPStream 类

转载 作者:行者123 更新时间:2023-11-28 08:21:20 25 4
gpt4 key购买 nike

我目前正致力于将小型控制台应用程序转换为 TCP 服务器/客户端应用程序。客户端将通过任何 Telnet 客户端连接到服务器,服务器将为每个 Telnet 连接复制标准控制台界面。

我开始研究使用我从 Beej 的网络编程指南中学到的技术来实现这一点——接受连接,然后使用 fork() 将其分离到自己的进程中。

但是,我更愿意保留我对流式 IO 的使用(原始控制台应用程序使用 cin/cout,对网络逻辑使用类似的功能会使转换过程更加简单)。

我发现了 TCPStream 类,它隐藏在 sockets.h (http://www.gnutelephony.org/doxy/bayonne2/a00215.html) 中

看起来这个类将允许我使用带有流 IO 的服务器。但是,我找不到使用此类的单个示例,也找不到关于如何将 fork() 与它一起使用的解释。

有什么想法吗?在此先感谢您的帮助。

最佳答案

我认为您混淆了树木和森林。一个套接字类只是您需要完成的整体工作的一小部分,因此不值得关注它。

如果您的目标只是让您的项目正常运行,那么只需使用现有的框架,而不是尝试从大型项目中提取单独的类。 POCO有一个 TCPServer 类,它将为您完成 90% 的工作。 QT、ACE 等都有类似的类。没有大量关于 POCO 的文档,但它们确实很好地涵盖了 TCPServer,如果您真的感兴趣的话,您可以通过阅读源代码学到很多东西。

关于c++ - 多线程 TCP 服务器的 TCPStream 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5735796/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com